⑴ 哪位大蝦知道IIS7.5偽靜態返回404頁面怎麼弄
正確設置的步驟:
步驟一:
ISS中404錯誤頁面設置
打開IIS管理器-->點擊要設置自定義404的網站的屬性-->點擊自定義錯誤選項-->選中404頁-->選中並打開編輯屬性-->設置成文件或默認值-->URL 里填寫「/404.html」,按確定退出。再把做好的404.html頁面上傳到網站根目錄下。此處在「消息類型」中一定要選擇「文件」或「默認值」,而不要選擇「URL」,不然,將導致返回「200」狀態碼。
步驟二:
Apache下設置404錯誤頁面很簡單,一般都是有一個404錯誤頁面設置的功能,只需要自己做好一個404頁面,上傳到對應的目錄就可以了。
步驟三:
一些主機的空間默認就是返回值320或200狀態碼,怎麼辦呢?我們可以通過下面的代碼來解決:
ApacheServer下設置404錯誤頁面
建立一個.htaccess 文件,在其中加入如下內容:ErrorDocument 404/notfound.php,然後將.htaccess文件上傳到網站根目錄,最後製作一個404頁面,命名為notfound.php,和上面的名字一定要統一,同樣上傳到網站根目錄就OK了。這里切記不要使用絕對URL,如果使用絕對URL返回的狀態碼是302或200了。
IIS/asp。net下設置404錯誤頁面
首先,修改應用程序根目錄的設置,打開 web.config 文件,引用以下內容:
1
2
3
4
5
6
7
<configuration>
<system.web>
<customErrors mode=OndefaultRedirect=error.asp>
<error statusCode=404″ redirect=notfound.asp/>
</customErrors>
</system.web>
</configuration>
error.asp為系統默認的404頁面名,notfound.asp為自定義的404頁面,使用時請修改相應文件名。
然後,在自定義的404頁面notfound.asp中加入以下代碼,便可以保證IIS伺服器能夠正確地返回404狀態碼。
1
2
<% Response.Status
= 404 Not Found%>
總而言之,網站的404頁面一定要設置好,如果說返回的是200狀態碼那就是自找麻煩,不如不做。木木seo建議404頁面設置完成後,一定要檢查是否正確,返回的一定要是404狀態,如果你網站因為產生較多200碼404頁面而導致降權,那是非常悲劇的。
另外我們在製作404頁面的時候也要注意頁面的美觀和體驗,盡量不要自動跳轉也不要僅僅顯示此頁面無法訪問,404頁面也需要有清晰的導航,讓用戶來決定去向,這樣才能留住用戶。
⑵ 網站偽靜態怎麼設置啊,打開網頁顯示404
虛擬主機不是自帶配置的嗎,怎麼還要手動,難道是Windows 伺服器? 實在不會呼叫他們客服,很快就給你解決了,你這個太多了,看著頭大。
⑶ 關於php偽靜態的問題,html後帶參數網頁404
你規則里可能有一條類似的url請求,指向的伺服器地址不可用導致的,檢查一下路由規則
⑷ .htaccess PHP偽靜態和404問題
linux 區分大小寫的
你看下Error.html是不是這樣的文件名 如果是小寫的改為你寫的文件名
⑸ php網站在windows主機搬到linux主機後,只能訪問首頁,其他頁面地址都是404
相信網上有很多關於404頁面的製作帖子了,這里我要總結的是根據自己這一次網站被降權而總結的404自定義錯誤頁面的製作,絕對超級詳細。
一、什麼是自定義404錯誤頁面?
404自定義錯誤頁面就是當用戶輸入了錯誤的url地址或者輸入了一個不存在的url地址時,所返回的一個頁面,它的目的是:告訴瀏覽者其所請求的頁面不存在或鏈接錯誤,同時引導用戶使用網站其他頁面而不是關閉窗口網站離開。
二、404自定義錯誤頁面是如何形成的?
HTTP 404 錯誤意味著鏈接指向的網頁不存在,即原始網頁的URL失效,這種情況經常會發生,很難避免,比如說:網頁URL生成規則改變、網頁文件更名或移動位置、導入鏈接拼寫錯誤等,導致原來的URL地址無法訪問;當web伺服器接到類似請求時,會返回一個404 狀態碼,告訴瀏覽器要請求的資源並不存在。但是,Web伺服器默認的404錯誤頁面,無論Apache伺服器還是IIS伺服器,均十分簡陋、呆板且對用戶不友好,無法給用戶提供必要的信息以獲取更多線索,無疑這會造成用戶的流失。
因此,很多網站均使用自定義404錯誤的方式以提供用戶體驗避免用戶流失。一般而言,自定義404頁面通用的做法是在頁面中放置網站快速導航鏈接、搜索框以及網站提供的特色服務,這樣可以有效的幫助用戶訪問站點並獲取需要的信息。
三、404自定義錯誤頁面對SEO的影響
自定義404錯誤頁面是增強用戶體驗的很好的做法,但在應用過程中,網站製作者往往並未注意到對搜索引擎的影響,譬如:錯誤的伺服器端配置導致返回「200」狀態碼或自定義404錯誤頁面使用Meta Refresh屬性導致返回「302」狀態碼。正確設置的自定義404錯誤頁面,不僅應當能夠正確地顯示,同時,應該返回「404」錯誤代碼,而不是 「200」或「302」。雖然對訪問的用戶而言,HTTP狀態碼究竟是「404」還是「200」來說並沒有什麼區別,但對搜索引擎這則是相當重要的。
所以要確保404頁面返回的是404代碼而不是200和302.在自定義404錯誤頁面設置完畢後,一定要檢查一下其是不是能夠正確地返回「404」狀態碼。可以使用Server Header檢查工具(http://www.sendong.net/seo-tools/redirect-check/),輸入一個不存在網頁的url,查看一下HTTP Header的返回情況,確信其返回的是「404 Not found」。
四、定製404錯誤頁面的基本原則
首先應明確的是,404錯誤頁面應工作在伺服器級而不是網頁級。對定製使用動態頁面如PHP腳本類型的404頁(如:404.php、404.asp、404.aspx等)時,必須確保在PHP執行前伺服器已經順利地送出「404」狀態碼,不然,一旦執行到了ISAPI(一般運行在windows伺服器上的偽靜態腳本服務技術)級別,返回的狀態碼便只能是「200」或其他如「302」之類的重定向狀態碼了。對於大部分使用了windows虛擬主機,同時又支持PHP程序運行的伺服器,一般都使用了ISAPI技術,他們可以提供兩種自定義技術,一種靜態404.htm頁面, 這種頁面一般不直接放在網站的根目錄之下,而是放在一個「HttpError」這個文件夾之下,但是返回的狀態碼是「200」,另一種是動態404頁(如:404.php)等的設置,這種設置,就是在網站的根目錄之下放一個404.php之類的動態頁面,這樣會返回狀態碼「404」,所以網站的製作者,在虛擬主機的後台設置時,必須看清楚自己的設置,如何要做網站的SEO優化,那麼就要設置成能返回「404」狀態碼的那種,否則就會吃大虧.
其次,在自定義網站的404錯誤頁面時,對設置的錯誤頁面URL鏈接應使用相對路徑而不是絕對路徑,而且自定義404頁面應該放在網站根目錄下。盡管無效鏈接可能是多種形式的URL,但當發生404訪問錯誤時,WEB伺服器會自動將其轉到自定義的當404錯誤頁中,這跟URL的形似沒有關系。
五、404錯誤頁面的設置方法
1、Apache伺服器下設置404錯誤頁面
為Apache Server設置 404錯誤頁面的方法很簡單,首先製作一個名為404.html/404.htm/404.php/404.asp/404.aspx的頁面,視空間要求而定,再在.htaccess 文件中加入如下內容即可(.htaccess文件一般linux空間會自帶的,如果沒有這個文件,自己可以用記事本寫一個,命名為.htaccess,一定要記得去掉記事本文件的.txt哦。而windows虛擬空間是沒有這個文件的,也不用上傳這個文件):
# 404 page
ErrorDocument 404 /notfound.php
(「notfound」是你給你的自定義錯誤頁面的命名,你也可以改成Error.php等等)
注意:
(1).切記不要將404錯誤跳轉到網站主頁,比如使用了js腳本或者meta refresh跳轉技術。否則可能會導致主頁在搜索引擎中消失或者不被收錄.
(2).切記不要使用絕對URL如果使用絕對URL返回的狀態碼是「302」+「200」
2、IIS/ASP.net下設置404錯誤頁面
靜態404錯誤頁面設置
(1)做個404頁面,404.html或者404.htm,根據你的網站實際情況來。
(2)伺服器/虛擬主機管理設置,根據自己的情況,選擇「使用根目錄下的404頁面」,如果自己能找到「消息類型」選項,則要選擇「文件」或者「默認值」,而不能選擇「URL」。如果自己在主機提供商網站的管理後台找不到此「消息類型」選項請聯系技術客服做出修改。這是具有決定性的一步。 這步一定要操作好,如果在後台找不到這個消息類型,就不要自己設置,因為你設置之後肯定返回值是200,所以事先和客服聯系下。
(3)上傳404.htm到網站根目錄,打開一次試試,看是否成功了。
動態404錯誤頁面設置
首先,修改應用程序根目錄的設置,打開 「web.config」 文件編輯,在其中加入如下內容:
<P><configuration></P>
<P><system.web></P>
<P><customErrors mode=」On」 defaultRedirect=」error.asp」></P>
<P><error statusCode=」404″ redirect=」notfound.asp」 /></P>
<P></customErrors></P>
<P></system.web></P>
<P></configuration></P>
復制代碼
註:上文例中「error.asp」為系統默認的404頁面,「notfound.asp」為自定義的404頁面,使用時請修改相應文件名。
然後,在自定義的404頁面「notfound.asp」中加入:
<P><%</P>
<P>Response.Status = 「404 Not Found」</P>
<P>%></P>
復制代碼
這樣,便可以保證IIS能夠正確地返回「404」狀態碼。
所有的設置完成之後,別忘記檢測http狀態,確定返回的是404,而不是200。
⑹ .htaccess PHP偽靜態後出現404錯誤
RewriteRule ^(.+)\/list\/(.+)\.html$ $1\/list\.php\?uid=$2
轉意和斜杠漏寫了吧..再看看!
⑺ 最近PHP頁面老是提示404錯誤,怎麼找原因
404的意思是面頁或者文件不存在啊
只要是網站無論是PHP還是NET都有404
你看看路徑,404面頁都是哪些,有可能是寫鏈接的時候寫錯了,也有可能是偽靜態寫錯了,404這個問題很好解決的,仔細看看。
⑻ php文件訪問報錯404
錯,路徑一定有問題
首先,你所謂的路徑沒問題只是你看到的沒問題。
那麼很可能:
http服務組件,也就是apache或者nginx配置的根目錄並不是你所認為的根目錄路徑
可能開啟了錯誤的偽靜態,導致當前地址被重寫,那麼你所看到的路徑就並不是真正的路徑了,而重寫後的地址並不正確,所以404
暫時想到這兩點,但是不管哪種原因,一定是路徑不正確。
⑼ wordpress後台設置偽靜態後 404怎麼設置
如果伺服器沒有特定404返回頁面,那麼通過WordPress主題文件夾中404.php即可設置404頁面了
⑽ PHP和asp如何實現偽靜態
PHP
a. apache+php 使用.htaccess做偽靜態 ,配置靈活,可隨時調整即可生效
ASP
a. asp一般配置在iis 下,iis7以上同樣可以利用URL Rewrite配置偽靜態
b. iis7以下,可以安裝 ISAPI_Rewrite,功能略有差異
c. iis下也可以利用404頁來實現偽靜態,但沒有多種規則可以設置,只能是單一入口的系統,把404設置到對應入口,再在程序中獲取訪問的url根據規則調用對應的頁面