-
Notifications
You must be signed in to change notification settings - Fork 58
Pretty fast Apache setting for Mac OS X contributors
如果你使用 Mac OS X 而想幫忙修改 www.moztw.org,需要一個自己測試用的 HTTP 主機,超級容易!Mac 裡面大多已經有預裝一個不錯的 HTTP server -- Apache,你只要會設定就可以了。這篇是給還沒有設定過 Apache 的一般使用者參考的,如果你已經很熟... 相信,你不必看這篇 :P
看你當初把 www.moztw.org 放到哪裡去了,例如可能是 /Users/myname/www.moztw.org 下等等,我們等會的設定會跟這個目錄有關。如果你不知道自己檔案放哪,在 Finder 裡對著 index.shtml 叫 Get Info,那邊有寫 :P
現在絕大部份的都有,首先請打開終端機 -- 按 Ctrl-Space 使用 Spotlight,打 Term 應該就會出現 Terminal(終端機),接著在終端機下輸入這行
sudo apachectl start
他會問你的密碼,成功後進入瀏覽器,在網址列輸入 http://localhost 試試!成功的話,請見下一步。
Mac 預裝的 Apache 設定檔放在 /etc/apache2/httpd.conf,接下來我們要繼續用 Terminal 編輯它 -- 不要怕,為了避免更多的麻煩,用 Terminal 是最省事的!打開 Terminal,輸入這行
sudo nano /etc/apache2/httpd.conf
這時可能還會問你密碼... 你知道的,它畢竟躲在一個你從來沒看過的目錄裡,發生什麼事情都很正常。總之輸入密碼後,接下來就是一個你可能也沒看過,但電腦老骨頭可能很似曾相識的「類 PE2」界面。
在這個界面裡修改東西很簡單,上下左右鍵移游標、Delete 鍵刪字元、輸入其他英文字母鍵就是... 輸入英文字母。簡單說,跟一般編輯文件沒兩樣。
- 尋找檔案內的文字,請先按 Ctrl-W,然後輸入自己要搜尋的字串。這個等下會一直用到,請背一下。
- 存檔請用 Ctrl-O,存檔時還會問你要存的檔名,按 Enter 就好了
- 離開請用 Ctrl-X
接著我們要來試修一下檔案。
首先我們要做到在瀏覽器輸入 http://localhost 時,顯示 moztw.org 的網頁檔案。請這樣修改剛剛的設定檔:
- Ctrl-W 搜尋 DocumentRoot。應該會在下面幾行找到類似這樣的文字
DocumentRoot "/Library/WebServer/Documents"
- 把後面的目錄名稱改成你的程式碼位置,例如
DocumentRoot "/Users/myname/www\.moztw\.org"
- Ctrl-W 再搜尋一次 DocumentRoot,此時應該會看到這樣的文字
<Directory "/Library/WebServer/Documents">
- 還有什麼好說呢?這個目錄當然也要改
<Directory "/Users/myname/www\.moztw\.org">
- Ctrl-O 存檔!Ctrl-X 跳離!
接著重新啓動 Apache
sudo apachectl restart
回到瀏覽器,再輸入 http://localhost,你應該... 會看到一行震撼的文字: Access Denied!別擔心,那是因為我還沒發功呀!讓我們繼續看下去...
你在 www.moztw.org 裡看不到 index.html,因為我們只有 index.shtml,於是還要告訴 Apache 在單純輸入 http://localhost 的時候,應該要給我們 http://localhost/index.shtml 的內容:
- 再度編輯 httpd.conf
sudo nano /etc/apache2/httpd.conf
- Ctrl-W 搜尋 DirectoryIndex,下面兩行會看到這樣的文字
DirectoryIndex index.html
- 我們要在後頭加上 index.shtml,變成這樣:
DirectoryIndex index.html index.shtml
- Ctrl-O 存檔! Ctrl-X 跳離!
接著重新啓動 Apache
sudo apachectl restart
回到瀏覽器,再輸入 http://localhost,你應該會看到秀麗的程式碼出現在你的眼前,淡淡的不加一點裝飾... (被揍) 總之,我們還差最後一個步驟了!
MozTW 網站大量使用 Server Side Include,技術詳情就不在這邊解釋,只說明怎麼開啓以便看到正確的畫面:
- 再度編輯 httpd.conf
sudo nano /etc/apache2/httpd.conf
- Ctrl-W 搜尋 Options Indexes FollowSymLinks MultiViews
- 在後面加上 IncludesNoExec,變成這樣:
Options Indexes FollowSymLinks MultiViews IncludesNoExec
- Ctrl-W 搜尋 AddType text/html,會看到這兩行
#AddType text/html .shtml #AddOutputFilter INCLUDES .shtml
- 把那兩行前面的 # 刪掉就好了,變成這樣
AddType text/html .shtml AddOutputFilter INCLUDES .shtml
- Ctrl-O 存檔! Ctrl-X 跳離!
接著重新啓動 Apache
sudo apachectl restart
回到瀏覽器,再輸入 http://localhost,這回總算成功啦!
不用的時候,建議可以使用這行關掉 Apache:
sudo apachectl stop