1 頁 (共 1 頁)

Apache & PHP

發表於 : 2014-11-23 14:56:58
yehlu
http://edentsai231.blogspot.tw/2013/08/ ... erver.html

由於 Mac 系統為 Unix 系統發展而來,因此本身有內建 Apache Web Server,不需要多餘的安裝程序,以下為在 Mac OSX 中啟用 Apache Web Server 的步驟:
備註:以下的步驟將會修改一些檔案,由於大部份設定檔有其重要性,因此通常是唯讀屬性,若遇到檔案權限而無法直接修改,請使用 sudo 協助完成。
1. 啟動 Apache Web Server
開啟 Terminal 終端機輸入下列指令啟動 Apache Web Server。
$ sudo apachectl start
查看 Apache Web Server 的版本。
$ sudo apachectl -v
Server version: Apache/2.2.22 (Unix)
Server built: Dec 9 2012 18:57:18
開啟瀏覽器輸入網址「http://localhost」,若看到 It Works 表示 Apache Web Server 啟動成功。

Apache Web Server 啟動成功
備註:其他相關指令。
$ sudo apachectl restart # 重新啟動
2. 設定 Apache 載入 PHP5 模組
Apache 的預設值並沒有啟用 PHP5 模組,因此我們必須修改 Apache 設定檔將 PHP5 載入。
首先切換到 Apache 設定檔資料夾 (/private/etc/apache2)。
$ cd /private/etc/apache2 #Apache 相關設定檔皆於此資料夾
修改 httpd.conf 設定檔,並找到下列設定將其註解拿掉
$ sudo vim /private/etc/apache2/httpd.conf
LoadModule php5_module libexec/apache2/libphp5.so #將註解拿掉
基本上到這裡已經差不多能夠撰寫 PHP 了,但是我們必須再接著對 PHP 做一些設定。
3. 設定 PHP
Mac OS X 的 PHP 設定檔放置在 /etc/php.ini ,但實際上這個檔案還不存在,因此必須先複製另一份參考用的設定檔(/etc/php.ini.default)當作自己的 php.ini 設定檔。
複製 php.ini.default 作為自己的 php.ini 設定檔。
$ cd /etc/ # php.ini 放置於 /etc/php.ini
$ sudo cp php.ini.default php.ini # 複製參考用的設定檔
4. Apache Web Server 默認的根目錄
Apache Web Server 預設 /Library/WebServer/Documents 作為網站根目錄,若有需求另外設定默認的根目錄路徑,可參考下列方法:
修改 httpd.conf,為找到設定 DocumentRoot 的部份,將其路徑更改為你希望作為網站根目錄的地方。
$ sudo vim /private/etc/apache2/httpd.conf
DocumentRoot "Your Root Path" # 指定為你要的資料夾路徑
5. 啟動 Apache Web Server 的虛擬主機配置功能
Apache Web Server 預設中並沒有開啟 VirtualHost 的功能,必須手動將它開啟。
開啟 Apache 的虛擬主機配置功能。
$ sudo vim /etc/apache2/httpd.conf # 修改 httpd.conf 設定檔
# Virtual hosts
Include /private/etc/apache2/extra/httpd-vhosts.conf # 找到此行將註解拿掉
$ sudo apachectl restart # 重新啟動 Apache
$ sudo apachectl stop # 停止 Apache
修改虛擬主機設定檔(以下設定兩個虛擬主機做為範例) 在修改 httpd-vhosts 設定檔時,你會發現檔案中已經存在兩個設定的範例,只要修改它就可以了,有額外需求再新增。
$ sudo vim /etc/apache2/extra/httpd-vhosts.conf # 修改 httpd-vhosts 設定檔™
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents"
ServerName localhost
ErrorLog "/private/var/log/apache2/localhost-error_log"
CustomLog "/private/var/log/apache2/localhost-access_log" common
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Users/edentsai/sites/"
ServerName mysites
ErrorLog "/private/var/log/apache2/mysites-error_log"
CustomLog "/private/var/log/apache2/mysites-access_log" common
<Directory> # 設定資料夾讀取權限
Option Indexes FollowSymLinks MultiViews
AllowOverride None
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
修改主機設定檔
$ sudo vim /etc/hosts # 修改 hosts 設定檔
127.0.0.1 mysites # 新增此行,讓 mysites 對應到 127.0.0.1

上述步驟完成後,理應就能直接透過 http://localhost, http://mysites 來執行 php 了。
參考資料
Jedi Linuxer - Max OS X 啟用 Apache Web Server
Jedi Linuxer - Max OS X 啟用 PHP5、Apache 執行環境
Stack Doc - Mac OS X 中配置 Apache