PHP header()函數使用詳細(301、404等錯誤設置)
2019-11-02 14:09:08
供稿:網友
如果您剛剛開始學習PHP,可能有許多函數需要研究,今天我們就來學習一下PHP Header()的使用方法,更多的使用說明,請您參照PHP中文手冊,下面是關于header函數的詳細使用說明
header實現404無法找到頁面
復制代碼 代碼如下:
Header("HTTP/1.1 404 Not Found");
針對apache配置中的ErrorDocument 404 /404.php功能,把nginx配置中的
復制代碼 代碼如下:
error_page 404 /404.php;
改成
復制代碼 代碼如下:
error_page 404 = /404.php;
php heager 301
復制代碼 代碼如下:
<?php
header("HTTP/1.1 301 Moved Permanently");
header ("Location:$url");
?>
不管頁面有多少header,它會執行最后一個,不過是有條件的,例如:
header('Location://www.jb51.net');
header('Location:http://www.g.cn');
header('Location:http://www.baidu.com');
這個就會跳到百度
header('Location://www.jb51.net');echo '烈火網;
header('Location:http://www.g.cn');
header('Location:http://www.baidu.com');
這個就會跳到google
下面是關于header函數的詳細使用說明
一、作用:
~~~~~~~~~
PHP只是以HTTP協議將HTML文檔的標頭送到瀏覽器,告訴瀏覽器具體怎么處理這個頁面,至于傳送的內容則需要熟悉一下HTTP協議了,與PHP無關了
傳統的標頭一定包含下面三種標頭之一,并只能出現一次。
Location: xxxx:yyyy/zzzz
Content-Type: xxxx/yyyy
Status: nnn xxxxxx
二、先來了解一下HTTP協議的運作方式
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
HTTP協議是基于請求/響應范式的。一個客戶機與服務器建立連接后,發送一個請求給服務器,請求方式的格式為,統一資源標識符、協議版本號,后邊是 MIME信息包括請求修飾符、客戶機信息和可能的內容。服務器接到請求后,給予相應的響應信息,其格式為一個狀態行包括信息的協議版本號、一個成功或錯誤的代碼,后邊是MIME信息包括服務器信息、實體信息和可能的內容。
它分四個過程,在HTTP協議中,服務端是指提供HTTP服務的部分,客戶端是指你使用的瀏覽器或者下載工具等等。在通訊時,由客戶端發出請求連接,服務端建立連接;然后,客戶端發出HTTP請求(Request),服務端返回響應信息(Respond),由此完成一個HTTP操作。
三、HTTP協議狀態碼表示的意思
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1×× 保留
2×× 表示請求成功地接收
3×× 為完成請求客戶需進一步細化請求
4×× 客戶錯誤
5×× 服務器錯誤
四、操作實例:
~~~~~~~~~~~~~
<1> 重定向功能,這種最常見
<?php
Header("Location: //www.jb51.net/");
?>
<2> 強制用戶每次訪問這個頁面時獲取最新資料,而不是使用存在客戶端的緩存。
代碼
<?php
//告訴瀏覽器此頁面的過期時間(用格林威治時間表示),只要是已經過去的日期即可。
header("Expires: Mon, 26 Jul 1970 05:00:00 GMT");
//告訴瀏覽器此頁面的最后更新日期(用格林威治時間表示)也就是當天,目的就是強迫瀏覽器獲取最新資料
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . "GMT");
//告訴客戶端瀏覽器不使用緩存
header("Cache-Control: no-cache, must-revalidate");
//參數(與以前的服務器兼容),即兼容HTTP1.0協議
header("Pragma: no-cache");
//輸出MIME類型