macOS High Sierra 上測試 Apache 和 PHP 站點
macOS 是一個類 Unix 系統,發源於 OpenBSD,我們在這個系統上可以看到許多漂亮的 UI 設計,但在命令行里,macOS 也藏著相當大量的優秀軟體工具,比如 Apache2(httpd)。
如果你在 MacBook 上開發 PHP 網站,想要測試一下效果,就會發現 macOS 的伺服器設置和 Ubuntu 或者 CentOS 稍有不同。
我這裡介紹 macOS 原生和安裝 XAMPP 這兩種方式。
macOS 自帶 Apache
運行
蘋果最新的系統 High Sierra 里,自帶的 Apache 需要使用 sudo 來運行:
sudo apachectl startnsudo apachectl stopnsudo apachectl restartnsudo apachestl reloadn
默認是在 80 埠:
http://localhost:80/
配置文件
Apache 配置文件目錄在 /etc/apache2/ :
主要的配置都寫在 httpd.conf 這個文件里,比如 Alias,Redirect 等等。
如果除了默認用戶,需要添加別的用戶,需要去 users 文件夾里添加配置文件,不過一般是用不到的。
每次修改 httpd.conf 之後,都需要運行 sudo apachectl restart。
網站文件
macOS 專門有一個 WebServer 的默認文件夾,網站文件都需要集中到 /Libraray/WebServer/Documents 這個文件夾里,裡面有一個默認的 index.html.en 文件,只有一句話 It Works!:
如果你需要測試 PHP 網站,就需要把文件複製到 /Library/WebServer/Documents 文件夾里,而且需要使用 sudo 許可權。
這個默認 DocumentRoot 可以在 httpd.conf 里修改。
日誌文件
Apache 的默認日誌目錄在 /private/var/log/apache2/ 這個文件夾里:
如果你發現網站運行不對勁,除了瀏覽器的後台,你還可以查看 error_log 這個文件,裡面也許有你需要的重要信息,特別是當 PHP 代碼功能運行不正常時。
安裝 PHP
macOS 自帶 PHP,但可能並不是你想要的版本,比如你想要 5.6,但默認的是 7.0,你可以先卸載掉舊的版本,安裝新的版本,有一個別人寫好的腳本,專門可以干這個事情:
curl -s https://php-osx.liip.ch/install.sh | bash -s 5.6n
PHP for OS X / macOS as binary package
安裝後記得在 Apache 的配置文件 httpd.conf 里,去掉 php module 前的注釋符號 # :
#LoadModule php5_module libexec/apache2/libphp5.son
若有什麼不正常,可以查看 Apache 的 error_log。
XAMPP
XAMPP 是一個 macOS 上可用的類似於 LAMP 棧的集成包,Apache + MariaDB + PHP + Perl,據稱是目前最流行的 PHP 開發包。主頁:XAMPP Installers and Downloads for Apache Friends
使用很簡單,直接下載安裝包不停點擊確定就好了。它的網站文件目錄在 /Applications/XAMPP/htdocs。啟動 XAMPP 是去 /Applications/XAMPP/ 里找到 manage_osx 這個文件,點擊打開運行。
補充: Bitnami
因為我在亞馬遜 AWS 上試了安裝 Apache 和 PHP,所以發現了 Bitnami 這個工具,主頁: Bitnami。
這也是一個運行於 Ubuntu 系統上的集成式安裝包,AWS 上有 Bitnami 鏡像,可以直接拿來安裝 PHP 站點,比較好用。但缺點是很耗內存,默認都耗去了700MB的內存。
它是一個比較大的生態系統,有很多依賴 LAMP 棧的工具,都可以開箱即用,很適合短時間內上線網站:
推薦閱讀:
※如何評價知乎幾乎所有PHP相關問題中都出現「PHP是世界上最好的語言」的無關回答的現象?
※有哪些好的wordpress中文主題原創作者?
※培神都開始學PHP了,你還在等什麼。
※Web 開發中,用戶在表單中輸入的字元都應該經過哪些處理?
TAG:macOSHighSierra | PHP | Apache |