本文目錄一覽:
- 1、PHPcms404頁面具體步驟怎麼做啊,求高手指教
- 2、PHP如何使404頁面重定向
- 3、PHP動態頁面如何讓頁面返回404狀態碼?
- 4、thinkphp怎麼設置添加404頁面
- 5、大神們 thinkphp怎麼設置404頁面
- 6、thinkPHP到底怎麼設置404錯誤頁面
PHPcms404頁面具體步驟怎麼做啊,求高手指教
404頁面可以這樣做:
1、在網站根目錄下建 .htaccess文件
2、在 .htaccess文件中寫這行代碼:
ErrorDocument 404 /errorfiles/404.html
3、在根目錄建一個「errorfiles」的文件夾
4、在「errorfiles」文件夾中放一個名為 404.html的文件,也可以是其他任意指定的文件。
PHP如何使404頁面重定向
最近在改一些東西,包括Discuz論壇,在處理Discuzde修改時特別是重新寫了一個404de頁面,讓用戶訪問不存在de頁面時去訪問這個404頁面。但是遇到了一個很奇怪de問題,即無法重定向到這個頁面。
最初操作:
1、把apache中de配置文件里 加入代碼:ErrorDocument 404 /404.php
2、在404頁面de代碼里加上?php header(」HTTP/1.0 404 Not Found」 ? 。這個方法是向客戶端發送一個自然deHTTP頭。這個方法要在沒you向客戶端發送任何信息之前使用,因此加在404.phpde文件頭最好。
經過對配置文件和DZ論壇代碼de查看,發現原因:rewrite規則問題,即我做偽靜態de處理,導致第二種地址規則you效,於是已經pass過了伺服器層,apachede404定義不再起作用,所以在讀取數據dephp文件會被執行。針對這種情況應該做處理。
處理:
1、找到被執行de文件:如viewthread.php;
2、在查詢數據後,加上對數據de判斷,如果為空,則填寫重定向代碼;
3、代碼:
if(如果沒you任何結果)
{
//以前是僅僅顯示「該帖子已經不存在」de提示,現在是:
require(』/404.php』);
@header(』HTTP/1.1 404 Not Found』);
@header(』Status: 404 Not Found』);
exit;
}
結果:以上問題解決,可以以404de狀態重定向到我自定義de404頁面。
PHP動態頁面如何讓頁面返回404狀態碼?
header(“HTTP/1.0 404 Not Found”);
這個我剛試了下是可以的,應該是你這句話不是在頁面的頂部,而是中間,頂部默認就輸出一個200了。
thinkphp怎麼設置添加404頁面
首先應該嘗試在伺服器添加,其實沒這個必要,thinkphp自身便提供了404頁面的處理機制,我們只需要在lib下定義一個EmptyAction.class.php,且實現以下方法即可,如下:
?php
class EmptyAction extends Action {
function _empty(){
header(“HTTP/1.0 404 Not Found”);
$this-display(‘Public:404’);
}
// 404
function index() {
header(“HTTP/1.0 404 Not Found”);
$this-display(‘Public:404’);
}
}
?
以上通過直接定義空模塊和空操作實現404跳轉,但要注意的是:
設置header頭很重要, 不然的話返回的狀態會是200.
該類對應Public模板目錄下需要有名為404的頁面模板.
大神們 thinkphp怎麼設置404頁面
在ACTION中新建一個文件EmptyAction.class.php,文件中的代碼如下:
1
2
3
4
5
6
7
8
?php
class EmptyAction extends Action{
function _empty(){
header(“HTTP/1.0 404 Not Found”);//使HTTP返回404狀態碼
$this-display(“Public:404”);
}
}
?
在apache中設置
在你的網站配置中加入 ErrorDocument 404 /404.html 即可。
在iis中設置
IIS/ASP.net下設置404錯誤頁面
打開apache httpd.conf配置文件或者新建.htaccess配置文件
首先,修改應用程序根目錄的設置,打開 「web.config」 文件編輯,在其中加入如下內容:
1
2
3
4
5
6
7
configuration
system.web
customErrors mode=」On」 defaultRedirect=」error.asp」
error statusCode=」404″ redirect=」notfound.asp」 /
/customErrors
/system.web
/configuration
註:上文例中「error.asp」為系統默認的404頁面,「notfound.asp」為自定義的404頁面,使用時請修改相應文件名。
然後,在自定義的404頁面「notfound.asp」中加入:
%
Response.Status = 「404 Not Found」
%
php 404
if(如果沒有任何結果)
{
//以前是僅僅顯示「該帖子已經不存在」的提示,現在是:
require(』/404.php』);
@header(』HTTP/1.1 404 Not Found』);
@header(』Status: 404 Not Found』);
exit;
}
thinkPHP到底怎麼設置404錯誤頁面
1、首先要在Lib/Action 下建立EmptyAction.class.php模塊
內容如下:
複製代碼 代碼如下:
?php
/*
* @author rocky
* @date 20141021
* @desc 空模塊404等錯誤
* */
class EmptyAction extends CommonAction {
function _empty(){
header(“HTTP/1.0 404 Not Found”);
$this-display(‘Public:404’);
}
}
?
2、做完以上處理,只能在訪問到空模塊的時候才會訪問404頁面,所以,為了訪問空方法也訪問404頁面,我們還需要在CommonAction.class.php增加一個空方法了,方法如下:
複製代碼 代碼如下:
//處理所有沒有的方法的處理方法,引導到404頁面
public function _empty() {
R(‘Empty/_empty’);
}
3、做完以上工作基本可以了,但是別忘了把你的404.html頁面放在Tpl/Public下
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/206990.html