Mac OS X Tiger/將您的 Mac 用作 Web 伺服器
[需要澄清]
將 Mac OS X 用作 Web 伺服器比您想象的更容易。原因是 Mac OS X 附帶了功能強大且廣泛使用的Apache Web 伺服器軟體。
首先,開啟應用程式 > 系統偏好設定(在 Dock 中查詢),然後進入“共享”面板。在“服務”選項卡下,選中“個人 Web 共享”或選擇它並單擊“啟動”。Apache Web 伺服器現在應該正在執行,並且會在每次您的計算機啟動時自動啟動,除非您更改系統偏好設定中的設定。
由於 Apache 作為後臺服務或“守護程序”執行,而不是作為普通應用程式執行,因此它在執行時不會出現在 Dock 中。
開啟一個 Web 瀏覽器 - 例如 Safari - 並在位址列中鍵入localhost您應該會看到一個頁面,上面寫著類似“看到此內容而不是您期望的網站?”的資訊。此訊息是 Apache Web 伺服器首次安裝時將顯示的預設頁面。這意味著 Apache 已配置並正常工作,您可以開始釋出您的網站了!
當然,您不希望人們在訪問您的網站時看到預設主頁,而是希望他們看到您自己的網頁。為此,開啟一個 Finder 視窗並轉到 /Library/WebServer/Documents/。您應該會看到一組 HTML 和影像檔案,其中包括一個名為index.html的檔案。這些檔案用於您剛剛檢視的預設 Apache 頁面。
您可以刪除這些檔案(或者如果您願意,可以將它們放在其他地方),然後就可以將您自己的網頁放在此資料夾中。將您自己的 HTML 和影像檔案放入 /Library/WebServer/Documents/ 資料夾後,返回localhost瀏覽器中的頁面並重新整理。您現在應該會看到您的網頁,而不是預設的 Apache 頁面。恭喜您,您已經建立了 Web 伺服器!但是,您還沒有完成...
現在您已經設定了 Web 伺服器,您需要為人們提供一個地址來訪問您的網站。
本教程的這一部分假設您的計算機直接連線到網際網路,並且不在防火牆之後,也不使用網路集線器或 DSL 路由器連線。如果您的計算機透過路由器連線,您可能需要參考隨路由器附帶的手冊以啟用“埠轉發”功能,該功能允許您的 Apache Web 伺服器透過路由器將資料傳送到網際網路。內建的 Mac OS X 防火牆會自動允許 Apache 將網頁傳送到網際網路,但其他防火牆軟體可能有所不同。
如果您的計算機直接連線到網際網路,您只需向人們提供您的計算機的 IP 地址,您可以使用WhatIsMyIP 查詢,但這樣做可能會遇到問題...
問題在於大多數網際網路服務提供商 (ISP) 在每次家庭使用者計算機連線到網際網路時都會為其分配一個新的動態 IP 地址。IP 地址用於識別網際網路上的每臺單獨計算機。這意味著,隨著您的計算機的唯一 IP 地址發生變化,您的網站的相應地址也會發生變化,因此任何指向您的網站的連結和書籤都將停止工作!
幸運的是,有一個名為DynDNS 的解決方案,它將訪問者轉發到您選擇的 Web 地址(URL)到您的動態 IP 地址。您只需在 DynDNS 上註冊,下載 Mac OS X 客戶端程式,進行設定,它會在您的 IP 地址發生變化時自動將您的 IP 地址更新到您的 DynDNS 帳戶。
如果您有幸擁有一個靜態 IP(永遠不會改變),那麼您不需要 DynDNS 帳戶,但您可能希望購買一個域名,這樣人們就不必輸入數字來訪問您的頁面。DynDNS 還為靜態 IP 提供免費域名。
設定好 DynDNS 後,您可以透過鍵入您選擇用於 DynDNS 的域名來訪問您的網站(請注意,有時 DynDNS 服務需要一段時間才能在您首次設定帳戶時更新)。
如果您無法從自己的計算機上看到 Web 伺服器上的頁面,請檢查 Apache 是否正在執行。在 Finder 中,開啟選單“前往”>“實用工具”,然後開啟“活動監視器”應用程式。在出現的視窗中,在執行程序列表中查詢名為“httpd”的專案。這是 Apache Web 伺服器,如果它不在列表中,則表示 Apache 未執行。
要啟動 Apache,您可以開啟系統偏好設定的“共享”面板中的“Web 共享”,或者進入“終端”並鍵入sudo apachectl restart然後在提示時輸入您的密碼。
如果 Apache 正在執行,並且您無法從執行它的 Mac 上看到您的網站,請檢查位址列是否顯示 http://127.0.0.1/ 或 https:///。如果是,請檢查您是否已將一些檔案放入 Apache Web 網站資料夾中。
如果 Apache 正在執行,但您無法從網路外部的計算機或透過鍵入 DynDNS 地址看到您的網站,則可能存在網路問題阻止網路外部的計算機連線到您的 Mac。檢查您的路由器,檢視埠轉發是否已啟用並正確配置。
如果您仍然無法從家庭網路外部訪問您的網站,如果已啟用,請檢查您的 ISP 是否允許您在其網路上執行 Web 伺服器。某些 ISP 會阻止 TCP/IP 埠 80,該埠用於 Web 伺服器和瀏覽器使用的 HTTP 協議。如果此埠被阻止,那麼您將必須使用 dyndns 或 no-ip.com 來繞過埠 80 並使用另一個埠(例如 8080)。這還需要您配置 Apache。
如果您在 Mac OS X 計算機上設定了多個使用者,您可能會想知道每個使用者都可以擁有自己的網站。您可能已經注意到,Mac OS X 上的每個使用者在其主目錄中都有一個名為“Sites”的資料夾。
您可以透過在 Web 瀏覽器中開啟 URL https:///~username/ 來檢視您放入此資料夾中的 HTML 和其他網頁檔案,其中“username”是 Mac OS X 使用者帳戶名稱的簡寫版本(您在 Finder 中主資料夾的名稱)。
如果您在 Mac 上託管了一個公開到網際網路的 Web 伺服器,那麼有一些重要的問題需要考慮。如果您使用指令碼(如 perl、PHP、JSP 等),這一點尤其重要。花些時間瞭解一下是值得的。此外,如果您不知道自己在做什麼,請勿嘗試手動配置 Apache。
以下是一些其他有用的資源