首頁  >  文章  >  後端開發  >  LNMP開發環境在Mac OS下建置的步驟詳解

LNMP開發環境在Mac OS下建置的步驟詳解

黄舟
黄舟原創
2017-03-13 16:38:591487瀏覽

這篇文章主要介紹了在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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn