將自己的電腦架設成簡單網頁伺服器
向上一篇文章,我們利用了WebPI安裝了WordPress,但卻沒有向外連線的功能,也就是別人無法來參觀你的部落格。那麼我們還需要什麼呢?我們還需要可以將我們的網頁向網路發行的套件,這樣別人才能藉由本機的IP來參訪我們的網站。這個套件就是Internet Information Services(IIS),這個套件基本上都有包含在Windows的安裝中,只是沒有被啟用。每種版本的啟用方式都不太一樣:
Windows XP:在「控制台」→「新增或移除程式」→「新增/移除Windows元件」中,勾選「Internet Information Services(IIS)」,並按確定。
Windows 7:在「控制台」→「程式集」→「開啟或關閉Windows功能」中,勾選「Internet Information Services」,並按確定。
當我們完成了IIS的安裝後,我們可以在本機的網頁瀏覽器的網址列中輸入「127.0.0.1」或是「localhost」,若可以到這個頁面,就代表我們成功的安裝了IIS這個服務。
當然,我們也可以從其他的電腦進入這個頁面,不過我們要先知道這台電腦的IP位置才能找得到這個網頁。那麼我們要怎麼知道電腦的IP位置呢?可以打開「命令提示字元」,並輸入「ipconfig」就會顯示出網路的相關訊息:
以上圖的電腦來說,IP位置就是192.168.1.3,我們就可以在別的電腦的網頁瀏覽器中輸入這個網址。
當然,這只是小小的測試。如果真的要能夠讓網頁發布到網路上,仍然需要至少一組固定的IP。上圖中的IP,192.168.1.3是一般ADSL用戶透過路由器所分配的IP,並不是真正的IP位置,所以只能從相同的網域中連結到這個網頁,而這個網域以外的電腦是無法連結到這個網頁的。如果需要真正的固定IP位置,可能就要向電信業者提出申請,或是透過學校、公司等有使用固定IP位置的地方來連線,才能獲得真正的固定IP。
講了這麼多關於網頁發布,現在我們真的要將我們的部落格發布到網路上了。
不過在我們發布網站之前,我們要先對電腦上的IIS環境作一些調整,讓這個伺服器可以執行PHP的網頁。一般情況下IIS是不支援PHP網頁的,所以我們打開網頁會發現這個狀況:
所以我們要先讓IIS環境支援PHP的功能。我們先打開IIS的管理介面,可以用「執行」來跑這個指令「inetmgr.exe」就能打開IIS的管理介面了。
我們從左邊的伺服器列表可以找到我們的電腦,然後可以從這個畫面中選擇「處理常式對應」,來新增PHP的支援。
在右邊的選單中,我們選擇「新增模組對應」來新增PHP的支援:
其中的「要求路徑」,就是對於副檔名的執行,我們要新增PHP的支援,所以輸入「*.php」,「模組」則選擇「FastCgiModule」,「執行檔」我們選擇安裝PHP的目錄中的php-cgi.exe(我們在安裝WordPress時,Web PI就幫我們一起把PHP5也裝好了,所以我們現在只要找出他的目錄在哪裡就好了),「名稱」則隨便取都可以。完成這些設定後,IIS就支援PHP的網頁了!
接下來是「預設文件」的設定。假設我們部落格的往只是http://localhost/blog/,那麼伺服器怎麼知道我們是要開啟這個目錄下的哪一個檔案呢?所以這裡我們就要設定了。在原本的預設設定中,檔案名稱為「index.htm」、「index.html」等的檔案會被當作是預設開啟的檔案,但我們安裝的WordPress是PHP網頁,並不在這些預設值中,所以我們要自己新增值。
我們可以從右邊的「新增」來增加預設文件:
由於WordPress的首頁為index.php,所以我們新增這個值到原本的表中。
這樣就完成IIS環境的設定了,再來就是將我們的網站加入到伺服器中。
我們在左方欄位的「Default Web Site」按右鍵,選擇「新增虛擬目錄」,將我們的網誌檔案目錄加入。這裡除了實體路徑(在電腦中資料的位置)之外,還要你取一個「別名」。這個別名會影響網址,比如說別名為blog,則網址就是http://localhost/blog/。
這樣IIS的設定就完成了!不過在這裡仍然有點小問題。當你進入網站時,無法從主頁連到網誌的其他頁面。這是因為WordPress超連結的預設設定是用「絕對路徑」而非「相對路徑」,所以會產生此問題。我們只要將這點改過來,就可以連結到其他的頁面了。這個修改我們可以通過WebMatrix來修改這個WordPress的資料庫來完成。
我們需要修改「wordpress.wp_options」這個資料庫中的「siteurl」和「home」這兩個選項的值。我們江浙兩個值改成「/blog/」就可以了。(當然,不一定是/blog/,要看你前面IIS設定時虛擬資料夾的別名。)
完成了以上這些設定,我們就可以在伺服器網頁瀏覽器中輸入http://localhost/blog/,或是從其他的電腦的網頁瀏覽器中輸入http://伺服器IP/blog/來參觀網站了!