網(wǎng)(LieHuo.Net)教程 風(fēng)云博客以前用的主機一直都是國外的免費主機,速度慢不說,還經(jīng)常打不開。尤其是文章寫的一多帳號就被k。網(wǎng)站搬來搬去,很是麻煩。痛定思痛,wboke下定決心,把博客搬回了國內(nèi)。購買了國內(nèi)的win主機,給風(fēng)云博客找了一個固定的家。搭建好了博客,其實也已經(jīng)考慮好了以后換其它主機的退路。所以還是很保守的暫時選擇了域名/post_id.html”,比如http://www.wboke.info/123.html作為博客的永久鏈接地址。
為了去掉wordpress博客文章連接地址中嵌入的index.php格式,在網(wǎng)上一直苦苦搜索,知道有個方法可以用ISAPI_Rewrite組件實現(xiàn)類似linux主機apache環(huán)境的mod_rewrite的url rewrite地址重寫功能,但必須要擁有服務(wù)器上運行該組件的權(quán)限,但win主機大多無此功能,只好另想辦法。
經(jīng)過一段時間的苦苦尋覓,終于找到了win虛擬主機不需任何wordpress插件,不需要第三方組件完美的wordpress偽靜態(tài)設(shè)置方法。當然,前提條件是服務(wù)器提供商的控制面板有自定義404錯誤頁面的選項。
你只需創(chuàng)建一個404錯誤頁面,并且寫入下列幾行代碼即可簡單方便的實現(xiàn)無插件完美支持windows主機的永久固定鏈接的偽靜態(tài)化地址格式。去掉網(wǎng)頁地址中的index.php!
header(”HTTP/1.1 200 OK”); $ori_qs = $_SERVER['QUERY_STRING']; $pattern = ‘/[^;]+;[^:]+://[^/]+(/[^?]*)(?:?(.*))?/i’; preg_match($pattern, $ori_qs, $matches); $_SERVER['PATH_INFO'] = $matches[1] . ‘?’ . $matches[2]; $_SERVER['REQUEST_URI'] = $_SERVER['PATH_INFO']; $query_args = explode(’&’, $matches[2]); unset($_GET); foreach ($query_args as $arg) { $the_arg = explode(’=', $arg); $_GET[$the_arg[0]] = $the_arg[1]; } include(’index.php’); ?> |
這樣即可固定REQUEST_URI和PATH_INFO參量并且包括進去index.php,剩下的將交給wordpress完成任務(wù)。
具體設(shè)置步驟:
1.新建一個記事本,在里面寫入上面代碼,保存,連同txt格式重新命名為404.php.(文件名視你的主機支持的404錯誤指向的文件名為準,靈活運用),將這個文件上傳到你博客空間的主目錄。設(shè)置404自定義錯誤指向404.php,一般來說,絕大多數(shù)服務(wù)器控制面板均提供該選項。
3.進入wordpress管理后臺,設(shè)置(Options)-永久鏈接,你就當自己的主機是linux主機使好了,任意、隨便設(shè)置自己喜歡的偽靜態(tài)地址格式及靜態(tài)地址后綴。我的固定鏈接格式是:/%post_id%.html。網(wǎng)址型式http://www.wboke.info/29.html
推薦鏈接地址層次不要太深,并且偽靜態(tài)化地址加上html,不過也有人推薦不要加上偽靜態(tài)后綴,因為那樣搜索引擎可能會認為那種地址是一個分類目錄,而不是一個具體的網(wǎng)頁,從而獲得更高的搜索排名權(quán)重,現(xiàn)在wordpress個人博客也比較流行那種偽靜態(tài)格式。
不管怎樣,你成功去掉了index.php!最后感謝英文作者einar 提供的天才設(shè)置方法!
還有另外一種真正的靜態(tài)化方法。第二種方案:用cos-html-cache實現(xiàn)靜態(tài)化 要求:使用下載cos-html-cache 1.1
具體設(shè)置步驟:
下載cos-html-cache 1.1(http://downloads.wordpress.org/plugin/cos-html-cache.1.1.zip) ,解壓,傳到/wp-content/plugins/目錄,在后臺”插件”中啟用”cos-html-cache”
在”設(shè)置”永久選項中,自定義結(jié)構(gòu)修改靜態(tài)化的規(guī)則,例如我使用的是 /%post_id%.html
下載404代碼(見附件)。并且上傳到網(wǎng)站的跟目錄,設(shè)置404自定義錯誤指向404.asp
在后臺cos-html-cache 管理選項生成靜態(tài)頁面,就可以實現(xiàn)目的了。
總結(jié):
第一種方案比較簡單,可以顯現(xiàn)無index.php的永久鏈接。第二種方案較復(fù)雜點,但是可以生成靜態(tài)頁面,且可以實現(xiàn)無index.php的永久鏈接。第二種方法,wboke試了幾次,沒有成功,只好選用第一種方法,實現(xiàn)了wordpress博客的網(wǎng)址靜態(tài)化。
轉(zhuǎn)自:風(fēng)云博客 地址:http://www.wboke.info/