Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
個好的網(wǎng)站,擁有一個好的 404頁面 是標配。
為何要有 404頁面?如何設置一個 404頁面?
在本地,比如我打開 localhost/fuck.htm(該文件不存在),HTTP 返回 404 Not Found,同時頁面展示如下:
用戶體驗很差有木有!更重要的是,如果沒有 404頁面,會影響 SEO。
為什么說會影響 SEO 呢?
當你的網(wǎng)站有些頁面地址(路徑)改變了。或者內(nèi)容被刪除了,導致原地址訪問本頁面時,提示頁面不存在。比如說你網(wǎng)站改版,也會導致很多原來存在的頁面,訪問的時候提示頁面被刪除或不存在。這個時候就會產(chǎn)生很多死鏈接,當一個網(wǎng)站死鏈接過多的時候,對搜索引擎是非常不友好的,影響你的網(wǎng)站整體權(quán)重,也對用戶體驗很不好。
這時候就需要一個 404 頁面。這個頁面是所有死鏈接的著陸頁,所有打不開的頁面都會跳轉(zhuǎn)到這個 404 頁面。這個頁面包含了你的主要的網(wǎng)站欄目導航。用戶在這個頁面可以很方便的選擇繼續(xù)瀏覽你網(wǎng)站別的內(nèi)容。404 頁面設置好以后,通過站長工具狀態(tài)碼檢,會返回 404 狀態(tài)碼。如果返回狀態(tài)碼是 200 說明是設置錯誤(這樣結(jié)果會造成搜索引擎有可能認為你網(wǎng)站有大量的重復內(nèi)容,從而網(wǎng)站權(quán)重被降),雖然對訪問的用戶而言,HTTP 狀態(tài)碼究竟是 "404" 還是 "200" 并沒有什么區(qū)別,但對于搜索引擎則是相當重要的。
404 說白了就是在當前頁面上做一個返回首頁或者其他頁面的一個鏈接,這個鏈接一方面告訴搜索引擎我們這個頁面已經(jīng)無效了請 "蜘蛛" 再去爬一次首頁吧!這樣當蜘蛛爬到死鏈接(404頁面)那里的時候就會自動跑到首頁并進行索引,也就是說 404 的出現(xiàn)不僅僅讓搜索引擎的數(shù)據(jù)庫更快的刪除掉這些死鏈接,還能讓蜘蛛更加勤快的認識新網(wǎng)站,可以說是一舉兩得。
筆者總結(jié)了兩種在 APACHE 中設置 404頁面的方法。當然首先你得寫好一個 404頁面,畢竟本質(zhì)上這也是個 html 頁面,內(nèi)容就可以集思廣益了,比方說可以寫個小游戲啊,展示網(wǎng)站其他內(nèi)容,或者說 404公益,等等。這里我寫了個文件把它命名為 404.htm,放在本地服務器的根目錄下(localhost/404.htm)。
方法一 —— .htaccess 設置:
第一種方法是在 .htaccess 文件中進行相關(guān)設置。
什么是 htaccess?概述來說,htaccess 文件是 Apache 服務器中的一個配置文件,它負責相關(guān)目錄下的網(wǎng)頁配置。通過 htaccess 文件,可以幫我們實現(xiàn):網(wǎng)頁 301 重定向、自定義 404 錯誤頁面、改變文件擴展名、允許/阻止特定的用戶或者目錄的訪問、禁止目錄列表、配置默認文檔等功能。
關(guān)于 htaccess 文件的更多內(nèi)容可以參考文末鏈接或者自行谷歌百度。
這文件是不是很奇怪,木有文件名,其實也不奇怪,用過 Git 的話你也肯定見過 .git 文件夾。但是本地服務器下沒有該文件啊?在 windows 下從別的文件強制改名轉(zhuǎn)換的話,會提示 "必須鍵入文件名",so 我們可以用命令行。
打開 cmd,cd 到指定目錄后,用如下命令便可創(chuàng)建一個 .htaccess 文件:
echo.>.config
前面說了,htaccess 文件負責相關(guān)目錄下的網(wǎng)頁配置,所以服務器下的任何文件夾都可以有一個自己的 htaccess 文件。這里我們把它放在根目錄下。
打開該文件,將以下內(nèi)容復制進去:
ErrorDocument 404 /404.htm
這時再打開 localhost/fuck.htm,頁面內(nèi)容便會變成 404.htm 的內(nèi)容,返回 404 狀態(tài)碼,URL 卻不會變化。
(PS:如此這般我本地便已經(jīng)生效,但是有些文章指出還需要在 conf 文件下做一些修改,如果沒有生效,可以參考下 這里)
這里有幾點需要注意:
ErrorDocument 404 /404.htm
中的斜杠漏掉,if so 404 頁面會顯示字符串 "404.htm"方法二 —— vhosts 設置:
假設你跟樓主一樣設置過 vhosts。(如果沒有,歡迎參考 WampServer下如何實現(xiàn)多域名配置)
接下去就很簡單了,打開 vhosts 文件(比如我的路徑 \wamp\bin\apache\Apache2.2.21\conf\extra\httpd-vhosts.conf),修改如下:
<VirtualHost *:80>
DocumentRoot "c:\wamp\www"
ServerName localhost
ErrorDocument 404 /404.htm
</VirtualHost>
要注意的點同 htaccess 設置要注意的一致。
404 頁面是一個成熟的網(wǎng)站必須要有的東西,主要有兩個作用,利于用戶體驗以及 SEO。在 apache 中有兩種設置方式,htaccess 和 vhosts,某些文章指出盡量使用后者,前者比較耗費資源。設置中要注意的點請參考第二小節(jié)。
404錯誤是網(wǎng)站通過瀏覽器反饋給客戶的一種提示頁面,告訴訪問者當前請求的URL不存在或者鏈接錯誤。理論上404頁面的出現(xiàn)不但造成了搜索引擎的爬行中斷,更破壞了用戶體驗。
眾所周知,正規(guī)SEO的大前提是用戶體驗,所以解決網(wǎng)站中的鏈接錯誤非常重要,除了解決掉鏈接錯誤以外,制作一張符合用戶體驗的404頁面,也是對用戶體驗的一種補救。
大部分網(wǎng)站的404頁面只是默認的頁面,一些CMS建站系統(tǒng)雖然有自帶404頁面,但是基本不符合用戶體驗的標準。那么要怎么才能建立一個符合用戶體驗的404頁面,同時又符合SEO標準呢?
首先,制作一張美觀的404頁面,該頁面千萬不可有跳轉(zhuǎn)到首頁或者其他頁面的功能,我們發(fā)現(xiàn)許多網(wǎng)站為了用戶方便,將404頁面做了跳轉(zhuǎn),這樣很容易造成搜索引擎的判斷錯誤,甚至將跳轉(zhuǎn)目的頁,比如首頁從搜索結(jié)果中刪除。
當用戶或者搜索引擎訪問到一個錯誤鏈接時,網(wǎng)站應該反饋一個404的狀態(tài)碼,此時用戶電腦就會出現(xiàn)404頁面,而搜索引擎則會放棄對該鏈接的索引。此時,一定要避免錯誤鏈接反饋的是202或者302等狀態(tài)碼,這樣一來搜索引擎就會對該頁面進行索引,如果存在大量錯誤鏈接,那么就會索引許多相同的頁面,甚至可能造成搜索引擎對網(wǎng)站的懲罰,后果是很嚴重的。
自定義樣式的404頁面的配置方法(Apache服務器):
如果你購買的是虛擬主機,則要先確定是否支持自定義404頁面的功能。如果是獨立主機則可以自己配置。首先,將制作好的404頁面放置在根目錄下,文件名可以起404.html或者自定義一個。然后,在空間的根目錄下的.htaccess文件中加入代碼:ErrorDocument 404 /404.html
(/404.html前面不要帶域名,否則反饋的狀態(tài)碼會變成202或者302。)
信我們訪問網(wǎng)站的過程中,經(jīng)常會出現(xiàn)404 not found的情況,如果不做任何的處理,不但界面比較丑、不利于搜索引擎優(yōu)化,而且用戶的體驗也很不好,用戶一懵B可能就會直接關(guān)閉頁面,離開你的站點。
網(wǎng)頁服務器默認的404頁
當網(wǎng)站上的某些頁面路徑發(fā)生了改變或者內(nèi)容被刪除了,導致原地址訪問本頁面時,就會提示頁面不存在,這樣就產(chǎn)生了死鏈接,當一個網(wǎng)站死鏈接過多的時候,蜘蛛將無法繼續(xù)爬行,導致搜索引擎對網(wǎng)站的關(guān)注降低,影響你的網(wǎng)站整體權(quán)重、收錄及排名。
界面可以自定義,變得美觀大方
可以引流,在404頁面放上首頁鏈接,可以把用戶拉首頁,同樣可以讓蜘蛛再去爬一次首頁,這樣不僅僅讓搜索引擎的數(shù)據(jù)庫更快的刪除掉這些死鏈接,還能讓蜘蛛更加勤快的認識新網(wǎng)站。
……
自定義的404頁面
如果你用的虛擬主機,應該可以直接在控制面板中設置404頁,如果你用IIS服務器,打開IIS,在“網(wǎng)站屬性”中找到“自定義錯誤”,并將HTTP404錯誤文件指向一個新建的404.html,我們具體講一下Apache服務器如何設置404頁。
方法一:設置.htaccess文件
htaccess 文件是 Apache 服務器中的一個配置文件,可以幫我們實現(xiàn):網(wǎng)頁 301 重定向、自定義 404 錯誤頁面、改變文件擴展名、允許/阻止特定的用戶或者目錄的訪問、禁止目錄列表、配置默認文檔等功能。
1.新建.htaccess文件
注意這個.htaccess文件沒有文件名只有后綴,所以并不能直接在window上通過修改文件后綴獲得,我們可以用命令行創(chuàng)建這個文件。
打開 cmd,cd 到指定目錄后,用如下命令便可創(chuàng)建一個 .htaccess 文件
echo.>.htaccess
htaccess 文件負責相關(guān)目錄下的網(wǎng)頁配置,我們把它放在根目錄下。
2.編輯該文件,將以下內(nèi)容復制進去
ErrorDocument 404 /404.htm
注意:如果IE瀏覽器上沒有效果,肯定是你的 404 頁面內(nèi)容太少了,至少需要 512 b才能征服它。
方法二:vhosts 設置
如果你設置過vhosts,可以直接打開 vhosts 文件,修改如下:
<VirtualHost *:80>
DocumentRoot "D:\phpStudy\WWW"
ServerName localhost
ErrorDocument 404 /404.htm
</VirtualHost>
第一種方法比較簡單但是比較耗費服務器資源,建議用第二種方法。另外,還需要注意兩點:1,不要在404頁上直接跳轉(zhuǎn)到首頁,搜索引擎會直接標記你的行為為違規(guī)行為。2,設置好以后最好再檢查一遍網(wǎng)頁的http狀態(tài),如果是200狀態(tài),表示這是一個正常頁面,會造成大量URL地址都是顯示這個頁面,搜索引擎會誤以為網(wǎng)站上有大量重復的內(nèi)容,這樣可能會造成網(wǎng)站被降權(quán)或被K掉。
*請認真填寫需求信息,我們會在24小時內(nèi)與您取得聯(lián)系。