解決分類目錄和標(biāo)簽打開(kāi)錯(cuò)誤:
創(chuàng)新互聯(lián)專注于休寧縣網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供休寧縣營(yíng)銷型網(wǎng)站建設(shè),休寧縣網(wǎng)站制作、休寧縣網(wǎng)頁(yè)設(shè)計(jì)、休寧縣網(wǎng)站官網(wǎng)定制、小程序定制開(kāi)發(fā)服務(wù),打造休寧縣網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供休寧縣網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。
1、在wp-includs文件夾下面,找到rewrite.php文件,復(fù)制保存或者下載下來(lái)。保存一下,防止修改出處,萬(wàn)一出錯(cuò)了,可以覆蓋還原。
2、然后用記事本打開(kāi)rewrite.php文件,找到這個(gè)函數(shù)名:function get_category_permastruct()(大約在970行),代碼如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
functionget_category_permastruct(){
if(isset($this-category_structure))
return$this-category_structure;
if(empty($this-permalink_structure)){
$this-category_structure=”;
returnfalse;
}
if(empty($this-category_base))
$this-category_structure=trailingslashit($this-front.‘category’ );
else
$this-category_structure=trailingslashit(‘/’ .$this-root.$this-category_base);
$this-category_structure.=‘%category%’;
return$this-category_structure;
}
3、然后在這個(gè)下面找到
if(empty($this-permalink_structure))
把這個(gè)改為
if(!empty($this-permalink_structure))
注意,這里只加了一個(gè)英文‘!’解決了wordpress分類目錄404錯(cuò)誤的問(wèn)題。
4、再找到這個(gè)函數(shù)function get_tag_permastruct()(大約在986行),里面也有一個(gè)
if(empty($this-permalink_structure))
一樣,還是改為
if(!empty($this-permalink_structure))
這里只加了一個(gè)英文‘!’解決了wordpress的tag標(biāo)簽404錯(cuò)誤的問(wèn)題。至此所有的問(wèn)題都解決了,看看是不是很簡(jiǎn)單?。?/p>
5、有些同學(xué)打開(kāi)3.2.1版rewrite.php文件的時(shí)候,可能沒(méi)有發(fā)現(xiàn)上述方法中的代碼,而是如下的內(nèi)容:
functionget_category_permastruct(){return$this-get_extra_permastruct('category');}
應(yīng)該是對(duì)代碼進(jìn)行了優(yōu)化。往下找,找到了function get_extra_permastruct($name),代碼如下:
functionget_extra_permastruct($name){if(empty($this-permalink_structure))returnfalse;if(isset($this-extra_permastructs[$name]))return$this-extra_permastructs[$name][0];returnfalse;}
6、對(duì)這段代碼進(jìn)行修改,添加個(gè)英文”!”即可,改為如下形式:
functionget_extra_permastruct($name){if(!empty($this-permalink_structure))returnfalse;if(isset($this-extra_permastructs[$name]))return$this-extra_permastructs[$name][0];returnfalse;}
即把代碼
if(empty($this-permalink_structure))
中的empty前加上英文的驚嘆號(hào)“!”
上傳覆蓋掉原來(lái)的文件即可完美解決設(shè)置固定鏈接后分類目錄和標(biāo)簽的404錯(cuò)誤問(wèn)題。
第一步:在.htaccess文件中加入如下語(yǔ)句:ErrorDocument 404 /404.html
如果需要修改的網(wǎng)站目錄下沒(méi)有.htaccess文件自己建立一個(gè)即可
第二步,自己建立一個(gè)404.html文件,放到網(wǎng)站的根目錄就可以了。
也可以使用其他后綴,只要.htaccess中指定同樣的文件就可以,例如404.php,404asp
如果站長(zhǎng)的服務(wù)是WIN主機(jī)的話,那linux系統(tǒng)之下設(shè)置404分方法如下:
在你的wordpress中找到wp-content/themes/你使用的模板/404.php
如果沒(méi)有404.php的話那么我們建立一個(gè)404.php.代碼如下:
?php get_header(); ?
div id="container" class="article"
div class="content"
?php _e('我勒個(gè)去,你找的這個(gè)頁(yè)面現(xiàn)在居然不存在。', '404yemian'); ?
/div
?php get_sidebar(); ?
/div
?php get_footer(); ?
這樣你的wordpress就有了自己的404頁(yè)面了,站長(zhǎng)自己也可以設(shè)計(jì)有個(gè)性的404頁(yè)面!
最近在改一些東西,包括Discuz論壇,在處理Discuzde修改時(shí)特別是重新寫(xiě)了一個(gè)404de頁(yè)面,讓用戶訪問(wèn)不存在de頁(yè)面時(shí)去訪問(wèn)這個(gè)404頁(yè)面。但是遇到了一個(gè)很奇怪de問(wèn)題,即無(wú)法重定向到這個(gè)頁(yè)面。
最初操作:
1、把a(bǔ)pache中de配置文件里 加入代碼:ErrorDocument 404 /404.php
2、在404頁(yè)面de代碼里加上?php header(”HTTP/1.0 404 Not Found” ? 。這個(gè)方法是向客戶端發(fā)送一個(gè)自然deHTTP頭。這個(gè)方法要在沒(méi)you向客戶端發(fā)送任何信息之前使用,因此加在404.phpde文件頭最好。
經(jīng)過(guò)對(duì)配置文件和DZ論壇代碼de查看,發(fā)現(xiàn)原因:rewrite規(guī)則問(wèn)題,即我做偽靜態(tài)de處理,導(dǎo)致第二種地址規(guī)則you效,于是已經(jīng)pass過(guò)了服務(wù)器層,apachede404定義不再起作用,所以在讀取數(shù)據(jù)dephp文件會(huì)被執(zhí)行。針對(duì)這種情況應(yīng)該做處理。
處理:
1、找到被執(zhí)行de文件:如viewthread.php;
2、在查詢數(shù)據(jù)后,加上對(duì)數(shù)據(jù)de判斷,如果為空,則填寫(xiě)重定向代碼;
3、代碼:
if(如果沒(méi)you任何結(jié)果)
{
//以前是僅僅顯示“該帖子已經(jīng)不存在”de提示,現(xiàn)在是:
require(’/404.php’);
@header(’HTTP/1.1 404 Not Found’);
@header(’Status: 404 Not Found’);
exit;
}
結(jié)果:以上問(wèn)題解決,可以以404de狀態(tài)重定向到我自定義de404頁(yè)面。
最大的可能性就是 apache(PHP 服務(wù)器)的配置出現(xiàn)了問(wèn)題。如果你不是 Apache 服務(wù)器,而是用的 IIS 調(diào)試的話,那就得去安裝一個(gè) “ISAPI_Rewrite3_0069_Lite.msi”篩選器,然后在站點(diǎn)設(shè)置里面將 PHP 置為優(yōu) 先級(jí)。
解決方法:先找到 Apache 安裝的路徑,在其根目錄下“conf 文件夾”中有一個(gè)文件叫 “httpd.conf”,用記事本將它打開(kāi),按“ctrl+F”鍵,彈出查找窗口,輸入 “#LoadModule rewrite_module modules/mod_rewrite.so”,如果能找到的話, 把前面的#刪除,這個(gè)#號(hào)表示注釋,也就是沒(méi)有開(kāi)啟,我們?nèi)サ糁笠簿烷_(kāi)啟了重啟 apache 服務(wù)器,再去后臺(tái)保存一下“固定鏈接”,重新打開(kāi)頁(yè)面。
這是在瀏覽這些站點(diǎn)時(shí)遇到各種不同的連接錯(cuò)誤。這種錯(cuò)誤一般是由于網(wǎng)站發(fā)生故障或者你沒(méi)有瀏覽權(quán)限所引起。最常見(jiàn)的就是404 NOT FOUND錯(cuò)誤信息。主要是因?yàn)镮E不能找到要求的網(wǎng)頁(yè)文件,該文件可能根本不存在或者已經(jīng)被轉(zhuǎn)移到其他地方。
常見(jiàn)問(wèn)題如下:
404-未找到。
404.0-(無(wú))_沒(méi)有找到文件或目錄。
404.1-無(wú)法在所請(qǐng)求的端口上訪問(wèn)Web站點(diǎn)。
404.2-Web服務(wù)擴(kuò)展鎖定策略阻止本請(qǐng)求。
404.3-MIME映射策略阻止本請(qǐng)求。