網站深圳虛擬主機偽靜態不是很難,不過對于沒有接觸過也不懂程序的初學者來說,像我剛開始做時,還是碰到了很多問題,浪費了很多的時間,比如上傳完規則后,靜態地址也可以訪問了,但是網站顯示的還是動態地址,當時以為需要靠程序來實現動態地址到靜態地址的變換,也找了很多內容,還瞎寫了很多配置規則在web.config中,都沒能成功,要顯示靜態地址需要把網站里所有的動態地址更換成靜態地址就可以了,這個最好需要懂程序才好操作。
什么是URL重寫(URL Rewrite)?
URL 重寫就是把傳入 Web 請重定向到其他 URL 的過程。
我們知道在Apache中有mod_rewrite來實現URL的重寫功能(URL Rewrite),然而IIS并沒有自帶這個功能,因此我們就需要使用第三方組件來實現。其實目前有好幾種IIS下的Rewirte組件,都是通過ISAPI篩選器來加載然后實現URL重寫的。
用得比較廣泛的一個是ISAPI Rewrite,支持用戶自定義httpd.ini文件,只要放在站點根目錄下就能生效。這個大大方便了用戶自己修改URL重寫規則。
ISAPI Rewrite是一個基于正則表達式的強大的URL處理引擎,他使用起來基本上就像Apache的mod_rewrite,但是他是專門為微軟的Internet Information Server (IIS)設計的。
對于集思虛擬主機用戶,如果需要使用URL Rewrite的功能,只需要在網站根目錄中建立httpd.ini的文件,httpd.ini就是一個文本文件,里面包含了URL Rewrite的URL Rewrite規則,常規格式如下:
[ISAPI_Rewrite]
RewriteRule ^/(.*) /default.php
舉例說明:下面是ASP網站深圳虛擬主機偽靜態設置方法部分的httpd.ini規則,有需要的可以參考。
#3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteCond %{HTTP:Host} ^by7188/.com$
RewriteRule(.*)http/://www/.by7188/.com$1 [NC,R=301]
RewriteRule^/index/.html$ /index/.asp
RewriteRule ^/news_([0-9]*)/.html$ /news/.asp/?id=$1
RewriteRule ^/zixun_p([0-9]*)_s([0-9]*)_k(.*)/.html$/news/.asp/?page=$1&sortid=&2&key_search=$3
網站301重定向有不少方法,小編覺著還是這種方式最簡單,在網上看到一種加代碼的方法也很簡單,不過,小編用加代碼的方法后,帶www和不帶www的狀態都變成301了,不是很清楚什么原因,小編沒用這個方法,就沒再研究。另外,經測試深圳虛擬主機偽靜態配置不分語言(asp/php/.net),只分系統windows和apache
一、windows 2003虛擬主機配置(httpd.ini文件)
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteRule /(w+).html /$1.aspx
前提:虛擬主機已安裝ISAPI_Rewrite組件,可以詢問空間提供商
使用:上傳到虛擬主機根目錄中即可,即時生效
說明:我只寫了把xxx.aspx映射為xxx.html,想要其他功能的請自己寫正則,不會那就再修煉一下;301也可以試用正則
注意:httpd.ini編碼一定要是ASCII
二、apache虛擬主機配置(.htaccess文件)
RewriteEngine On
RewriteBase /
RewriteRule ^tag-(.+).html$ tag.php?name=$1
總之,深圳虛擬主機(www.49028c.com/hezu.asp)偽靜態做完還有個問題,例如小編這個網站一開始并沒有屏蔽蜘蛛,所以百度收錄的有動態鏈接的地址,這樣和靜態鏈接的頁面會重復,從優化來講這個是不好的,也不知道什么時候動態地址頁面才能從百度收錄中去掉,如果一直在,就比較麻煩,對后續的排名不知道有多大的影響呢,繼續觀察吧。