這篇文章主要介紹了在Mac OS下搭建LNMP開發環境的步驟,文中透過一步步的步驟介紹的非常詳細,對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。
一、概述
大家應該都知道LNMP代表的是:Linux系統下Nginx+MySQL+PHP這種網站伺服器架構。 Linux是一類Unix電腦作業系統的統稱,也是目前最受歡迎的免費作業系統。代表版本有:debian、centos、ubuntu、fedora、gentoo等。 Nginx是一個高效能的HTTP和反向代理伺服器,也是一個IMAP/POP3/SMTP代理伺服器。 Mysql是一個小型關係型資料庫管理系統。 PHP是一種在伺服器端執行的嵌入HTML文件的腳本語言。這四種軟體都是免費開源軟體,組合在一起,成為一個免費、高效、擴展性強的網站服務系統。下面來看看本文的詳細內容。
二、安裝Homebrew
#使用Mac的程式設計師必不可少的一步就是安裝Homebrew,他就像是centOS的yum
指令和ubuntu的apt-get
指令一樣,透過brew
指令,我們可以快速的安裝一些軟體包。
使用命令列安裝Homebrew的命令如下:
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"
#使用brew doctor
檢查是否有衝突,然後使用brew update && brew upgrade
升級brew。
三、安裝nginx
#nginx在Mac OS中可以直接使用brew指令安裝:
brew install nginx
如果需要使用80埠的話,需要將nginx加入root群組當中:
sudo cp -v /usr/local/opt/nginx/*.plist /Library/LaunchDaemons/ sudo chown root:wheel /Library/LaunchDaemons/homebrew.mxcl.nginx.plist
然後使用指令啟動nginx服務:
sudo nginx
測試nginx是否安裝成功,因為預設設定文件監聽的是8080端口,所以先對8080端口發起請求:
curl -IL http://www.php.cn/:8080
結果應該類似於下:
HTTP/1.1 200 OK Server: nginx/1.9.1 Date: Fri, 29 May 2015 14:50:47 GMT Content-Type: text/html Content-Length: 612 Last-Modified: Fri, 29 May 2015 14:40:47 GMT Connection: keep-alive ETag: "5444dea7-264" Accept-Ranges: bytes
nginx的相關操作如下:
sudo nginx //启动nginx sudo nginx -s reload|reopen|quit //重新加载|重启|退出
四、安裝php-fpm
因為brew並沒有php-fpm的來源,所以首先要加入來源:
brew tap homebrew/dupes brew tap homebrew/php
然後安裝php-fpm,輸入指令:
brew install php56 --whitout-apache --with-imap --with-tidy --with-debug --with-pgsql --with-mysql --with-fpm
程式會自動安裝,等待幾分鐘後完成安裝。
安裝完成後,也需要將php加入$PATH
當中:
# 如果使用bash的话 vim ~/.bash_profile export PATH="/usr/local/sbin:$PATH" source ~/.bash_profile # 如果使用ZSH的话 vim ~/.zshrc export PATH="/usr/local/sbin:$PATH" source ~/.zshrc
然後可以設定php-fpm的開機自啟動:
mkdir -p ~/Library/LaunchAgents ln -sfv /usr/local/opt/php56/homebrew.mxcl.php56.plist ~/Library/LaunchAgents/ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php56.plist
使用下列指令監測php-fpm是否啟動成功:
lsof -Pni4 | grep LISTEN | grep php
如果啟動成功應有以下類似輸出:
php-fpm 27578 wenzhiquan 9u IPv4 0xf29f8b26c08fc27 0t0 TCP 127.0.0.1:9000 (LISTEN) php-fpm 27628 wenzhiquan 0u IPv4 0xf29f8b26c08fc27 0t0 TCP 127.0.0.1:9000 (LISTEN) php-fpm 27629 wenzhiquan 0u IPv4 0xf29f8b26c08fc27 0t0 TCP 127.0.0.1:9000 (LISTEN) php-fpm 27630 wenzhiquan 0u IPv4 0xf29f8b26c08fc27 0t0 TCP 127.0.0.1:9000 (LISTEN)
五、安裝MySQL
#MySQL也可以使用brew指令直接進行安裝:
brew install mysql
同樣,可以設定MySQL的開機自啟動:
ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
然後進行MySQL的安全安裝,使用下列指令,可以變更root密碼、刪除匿名使用者、關閉遠端連線等:
mysql_secure_installation
然後輸出以下內容:
> Enter current password for root (enter for none): //默认没有密码,直接回车即可 > Change the root password? [Y/n] //是否更改root密码,选择是,然后输入并确认密码 > Remove anonymous users? [Y/n] //是否删除匿名用户,选择是 > Disallow root login remotely? [Y/n] //是否禁止远程登录,选择是 > Remove test database and access to it? [Y/n] //是否删除test数据库,选择是 > Reload privilege tables now? [Y/n] //是否重载表格数据,选择是
測試資料庫是否已安裝成功:
mysql -u root -p
接著輸入剛才設定的root密碼,將會輸出以下內容:
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> exit //输入exit退出数据库
#六、設定nginx
首先,為我們的設定檔建立一些資料夾,這些是仿照ubuntu的nginx結構進行建立的目錄:
mkdir -p /usr/local/etc/nginx/logs mkdir -p /usr/local/etc/nginx/sites-available mkdir -p /usr/local/etc/nginx/sites-enabled mkdir -p /usr/local/etc/nginx/conf.d mkdir -p /usr/local/etc/nginx/ssl sudo mkdir -p /var/www sudo chown :staff /var/www sudo chmod 775 /var/www
然後修改nginx設定檔:
vim /usr/local/etc/nginx/nginx.conf
將內容替換為:
worker_processes 1; error_log /usr/local/etc/nginx/logs/error.log debug; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /usr/local/etc/nginx/logs/access.log main; sendfile on; keepalive_timeout 65; index index.html index.php; include /usr/local/etc/nginx/sites-enabled/*; }
然後建立php-fpm設定檔:
vim /usr/local/ect/nginx/conf.d/php-fpm
輸入以下內容:
location ~ \.php$ { try_files $uri = 404; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param script_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
然後加入網站設定檔:
vim /usr/local/ect/nginx/sites-enabled/default
輸入以下內容:
server { listen 80; server_name localhost; root /var/www/; access_log /usr/local/etc/nginx/logs/default.access.log main; location / { include /usr/local/etc/nginx/conf.d/php-fpm; } location = /info { allow 127.0.0.1; deny all; rewrite (.*) /.info.php; } error_page 404 /404.html; error_page 403 /403.html; }
重啟nginx,至此,配置完成,在www下寫一個測試文件,進行測試即可
總結
以上是LNMP開發環境在Mac OS下建置的步驟詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!