PHP之header頭函數

//基本不變的內容   使用長久緩存
    header('Cache-Control: max-age='.60*60*24*30*365);

    //很頻繁變化的內容 每次都發送緩存驗證 內容不變返回304 不然返回新的內容
    header('Cache-Control: no-cache');
    header('ETag: v1.0');
    header('Last-Modified: '.date('D, d M Y H:i:s \G\M\T', filemtime($filename)));

    //變化通常的內容   指定時間內使用緩存過時後發送驗證
    header('Cache-Control: must-revalidate,max-age=600');
    header('ETag: v1.0');
    header('Last-Modified: '.date('D, d M Y H:i:s \G\M\T', filemtime($filename)));

    //對安全性要求高的內容 不容許被緩存
    header('Cache-Control: no-store');

    //文件下載
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment;filename='.basename($filename));
    header('Content-Length: '.filesize($filename));
    readfile($filename);

    //頁面重定向 
    header('Location: http://www.baidu.com');
    
    //服務器HTTP/1.0 Basic認證
    if(isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW'])){
        echo 'username: '.$_SERVER['PHP_AUTH_USER'].'<br />';
        echo 'password: '.$_SERVER['PHP_AUTH_PW'].'<br />';
    }else{
        header('HTTP/1.0 401 Unauthorized');
        header('WWW-Authenticate: Basic realm="user"');  
        echo '若是用戶點擊取消按鈕,這句話將被髮送';
        exit;
    }

    //服務器HTTP/1.1 Digest認證
    $realm = 'jkljkl';
    header('HTTP/1.1 401 Unauthorized');
    header('WWW-Authenticate: Digest realm="'.$realm.'",qop="auth",nonce="'.uniqid().'",opaque="'.md5($realm).'"');

    //服務器404響應
    header('HTTP/1.1 404 NOT FOUND');
相關文章
相關標籤/搜索