1. 程式人生 > >正確的Win主機網站偽靜態設定方法

正確的Win主機網站偽靜態設定方法

在這兩天折騰主題的過程中,再次注意到偽靜態的設定,之前剛建站時用的是最簡單的404 錯誤重定向的方法:複製程式碼,新建成一個 404.php 丟到 web 根目錄,然後到空間控制面板將其指定為 404 錯誤頁面,最後將固定連結修改下,即可實現偽靜態。

當時,感覺這個方法最簡單,也能達到效果,也就沒去深究此法對 SEO 的影響,現在建站快一個月了,百度卻僅僅收錄了我的首頁和一篇動態文章,我這才開始懷疑這個偽靜態設定方法對百度 Seo 有很大影響(谷歌等搜尋引擎無礙)。通過網路搜素資料發現,確實有博友反映了同樣的問題,有人已經發博文告之經過404 錯誤重定向的偽靜態文章,百度會以為這個頁面是不存在的,所以直接略過而不會收錄!對比了一下我自己的部落格,發現還真的吻合!確實百度就只收錄了我的首頁以及一個動態頁面,而谷歌/360 卻全部都收錄了,而且基本發文一個小時只能就會更新收錄!

這樣看來,雖然沒有確切證據證實這個說法,但是為了長久考慮,我還是決定選用其他偽靜態的設定方法。

我的部落格是 Win+IIS 環境,經過對比站長們的經驗教程,我選擇了 Rewite 規則來實現 WordPress 的偽靜態。具體方法如下:

    • 諮詢空間商,伺服器是否已開啟 Rewrite 規則的支援
    • 新增 httpd.ini 檔案,寫入以下程式碼,並拷貝至網站根目錄
      INI
      1234567891011121314151617181920212223 [ISAPI_Rewrite]#3600=1hourCacheClockRate3600RepeatLimit32#Protecthttpd.iniandhttpd.parse.errorsfiles#fromaccessingthroughHTTP#wordpressweijingtai#FortagRewriteRule/tag/(.*)/page/(\d+)$/index\.php\?tag=$1&paged=$2RewriteRule/tag
      /(.+)$/index\.php\?tag=$1#ForcategoryRewriteRule/category/(.*)/page/(\d+)$/index\.php\?category_name=$1&paged=$2RewriteRule/category/(.*)/index\.php\?category_name=$1#ForsitemapxmlRewriteRule/sitemap.xml/sitemap.xml[L]RewriteRule/favicon.ico/favicon.ico[L]#Forfile-basedwordpresscontent(i.e.theme),admin,etc.RewriteRule/wp-(.*)/wp-$1[L]#Fornormalwordpresscontent,viaindex.phpRewriteRule^/$/index.php[L]RewriteRule/(.*)/index.php/$1[L]#Forrobots.txtRewriteRule/robots.txt/robots.txt[L]
  • 然後到 wordpress 後臺修改固定連結為%post_id%.html 即可,當然也可以是其他的, 個人建站時就已經選擇了這個形式,所以不能隨便更改,否則谷歌就要 K 掉我了!

至於這個方法的原理以及 httpd.ini 的寫法,網路上有大把大把的解說,我也就再不贅述了。寫這篇文章的主要目的是告訴跟我一樣的菜鳥站長們,使用“404 偽靜態”的方法會對百度的收錄造成一定障礙,還請慎用之!當然,是否屬實還得看我今天修改之後的效果如何了,靜候佳音吧!