此刻,一陣狂喜(或解脫?)。我的『wordpress IIS windows server pemalink 作戰計畫』終於成功。這48小時的煎熬真是#&※*§,為了避免有後人步上後塵,希望這篇能對大家有所幫助。
以前在IIS主機用WP就覺得相當不方便,最大的問題莫過於 “permalink”,真的可以把人搞爆。心想以前有解決過,這次為了省錢毅然再從Apache主機搬到IIS伺服器(ColdFusion主機一定是Windows based),真的需要勇氣與毅力。
這過去的48小時內,可以說市翻遍網路上所有相關資源,終於在一小時前,獲得解決。
WordPress permalinks 在Windows IIS 主機的問題有幾個解決方法,這裡,我將只提到兩個:
1. 最簡單的方法,是開新純文字檔嘗試將
cgi.fix_pathinfo = 1
cgi.force_redirect = 0
存成 “php.ini”檔 然後放在主機網址的根目錄。這個方法我以前在uplinkearth時用過,簡單好用。
很不幸的,此法並不試用於ixwebhosting,如果股溝過,應該可以找到許多篇用到 “ISAPI”的文章,但是我既不懂ASP,也碰不到主機的IIS,甚至幾個WP plug-ins都得去橋這個 “ISAPI”,讓我心生放棄。
唯一的一線生機就是如果我可以指定ERROR 404錯誤頁轉址的位置的話,還有一招! 早上和客服請教後 ,找到了在控制台可以轉址的介面,可是,為什麼還是不行!再度糾纏客服,客服R指出: 1)我設的是ERROR 400錯誤頁,所以他幫我加設了ERROR 404錯誤頁的轉址 [我才發現 錯誤頁的編號從400開始 一大堆不一樣],2) 轉址的code有錯。 可是…我明明只是照著 “einar的教學” 寫了一個PHP檔(命名為wp-404-handler.php)
<?php $qs = $_SERVER['QUERY_STRING']; $_SERVER['REQUEST_URI'] = substr($qs, strpos($qs, ':80')+3); $_SERVER['PATH_INFO'] = $_SERVER['REQUEST_URI']; include('index.php'); ?>
客服R很好心的幫我檢查一下,結果是wp-404-handler.php最後多了一個空白space(天哪! 我自己一定找不出來)。
所以這裡要強推的方案二 ,就是如果你可以指定錯誤頁轉址的話就可以使用。只要將這個4行的wp-404-handler.php 放到主機上,然後將 “404”(不是400喔!)的URL 轉到這個檔上 (選URL的原因是這是script自動產生的檔),確定WP的options/permalinks有啟動 ,就萬事OK!!
Error Document Code 404
Choose the document type
FILE �
URL
Path to Custom Error page
參考:
einar- Pretty WordPress Permalinks on IIS
plugin -WordPress URL Rewrite
plugin-wp_url_rewriting
How to create Pretty WordPress Permalinks on IIS WITHOUT using 404 redirects
Easy Permalinks in IIS
Keyboardface-iis permalink
關於WP MySQL中文備份的問題 ,請參考舊文 「 革命成功 ㊣ WordPress 2.x vs. MySQL 4.x 中文backup格鬥」
勇氣的故事:
最開始,我用的是uplinkearth的 “quantum”方案,月費$34.95並不便宜,但礙於coldfusion 主機真的不多而且一定比較貴(因為coldfusion 不是免費的),所以也沒得抱怨。但後來因為架了幾個部落格,毅然決定分家,採用較便宜的”basic”方案(還是要$24.95 且後來coldfusion 竟然還得加錢),其他的搬到mediatemple (mt),另一家知名的主機。(mt)的好處有:
- 100 GBs of premium storage
- 1 TB of short-path bandwidth
- Host up to 100 individual sites
感覺就好像無上限一樣,追蹤stats的Urchin也是免費(uplinkearth就要每個月5元一個網址)。資料庫也有人工智慧,如果突然有大流量會自動將你搬到較大的主機等正常在搬回等,真的不愧是大公司。只是他沒有coldfusion,我還是得保留小貴的uplinkearth。
前天 ,從top 10 web hosting才知道有ixwebhosting這家公司,不只是牌子老,口碑好,便宜!!而且有coldfusion!!!
ix web hosting 本來我很計較它醜陋的control panel介面,因為之前使用的兩家(uplinkearth & mediatemple)都太美了。不過還好在眾多醜陋的皮(skin)裡,找到一個wooden效果(上圖右邊)感覺好很多。本來以為便宜没好貨,但再三的搜尋比較後,發現ix其實是個老牌而且得獎無數的伺服器公司,口碑相當好。而且,無上限空間,無上限網址這樣的價格真的太好了。以前老東家的CF單一網址就要加$5元還是$7元,這裡只要月繳$5元每個網址都能用Coldfusion:
這是最便宜的方案
但這個方案的支援較多較好,無空間上限、無網址上限, 包含wordpress、zencart、phpBB(forum)、osCommerce等許多方便好用的程式。
談談客服,基本上 ixhosting, uplinkearth 和 mediatemple 三間的客服都很不錯。不過ixhosting有線上chat的服務,像電話一樣要小小等,不過真的可以巴著人家不放,我搬家遇到的問題都是用這個功能解決的。
奇怪的是之前和IIS有相衝問題的旦旦麵的 “Flickr Photo Gallery” plug-in竟然乖巧聽話沒有錯誤訊息?!真是意外的收穫啊!
難怪消失一陣子… XD 恭喜妳終於成功搬了新家了~ \^^/
不過不曉得是不是因為正好美國在塞車的關係,感覺這裡的回應速度比以前的慢說…
這裡有幾的地方補充一下…
1. HTTP 協定的狀態碼可以參考這裡,4 開頭都是 client 的錯誤。404 是 server 無法找到所請求的東東,或這它被設定成無法填滿請求,而且不知道原因為何。
List of HTTP status codes – Wikipedia
http://en.wikipedia.org/wiki/List_of_HTTP_status_codes
2. 自從 Adobe 買下 Micormedia 之後,最新版的 ColdFusion 8 已經可以跨平台了,可以參考這裡:
http://www.adobe.com/products/coldfusion/systemreqs/
下面幾家提供 CF8 的 hosting 公司可以參考一下:
http://www.occhosting.com/win-cold_fusion.html
http://www.efree2net.com/item_detail.cfm?item_no=10
http://www.hostmysite.com/cf8/
可能是塞車,我覺得速度跟之前差不多呢,今天你覺得OK嗎?
嗯 我剛連過去 還是ixwebhosting便宜啊! 呵 謝謝分享
嗯,差不多同一時間連,現在快粉多囉~還是妳最厲害啦… 😀 以後可以多注意 CF8 的方案。
幸好有這篇文章 再度救了我自己一命 呵 設定錯誤頁轉址真的很好用 可惜的是會比普通網站慢一點點
你好
看了,还是不是很懂,主要完全不懂代码
能不能详细讲解下?qq48665455
emai已经留下了