摘要:一些關(guān)于在最新下搭建開(kāi)發(fā)環(huán)境的流程建議,直接進(jìn)入正題安裝開(kāi)發(fā)常用包軟件又叫,是上的軟件包管理工具,能在中方便的安裝軟件或者卸載軟件,和系統(tǒng)中的非常相似,只需要一個(gè)命令,非常方便。
一些關(guān)于在最新 Macos 下搭建LNMP開(kāi)發(fā)環(huán)境的流程建議,直接進(jìn)入正題:
Preparing
安裝 Homebrew、Ohmyzsh、開(kāi)發(fā)常用包&軟件
1.1 Homebrew
Homebrew又叫Brew,是MacOS上的軟件包管理工具,能在Mac中方便的安裝軟件或者卸載軟件,和linux系統(tǒng)中的yum非常相似,只需要一個(gè)命令,非常方便。官方網(wǎng)站:http://brew.sh
安裝方法(打開(kāi) Terminal 終端,輸入):
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
檢驗(yàn)安裝成功方法(打開(kāi) Terminal 終端,輸入):
brew doctor
安裝常用軟件包(打開(kāi) Terminal 終端,輸入):
brew install wget brew install autoconf brew install openssl
Brew 常用語(yǔ)句(打開(kāi) Terminal 終端,輸入):
#我這里以操作 php70 為例 brew update #更新brew可安裝包,建議每次執(zhí)行一下 brew search php70 #搜索php7.0 brew tap josegonzalez/php #安裝擴(kuò)展brew tap #查看安裝的擴(kuò)展列表 brew install php70 #安裝php7.0 brew remove php70 #卸載php7.0 brew upgrade php70 #升級(jí)php7.0 brew options php70 #查看php7.0安裝選項(xiàng) brew info php70 #查看php7.0相關(guān)信息 brew home php70 #訪(fǎng)問(wèn)php7.0官方網(wǎng)站
人在天朝的話(huà),極有可能出現(xiàn)安裝速度過(guò)于緩慢的情況,有時(shí)候會(huì)讓你感覺(jué)安裝處于假死的狀態(tài),不必?fù)?dān)心,耐心等待即可,切不可心煩意亂的關(guān)閉終端窗口(網(wǎng)上有其他教程說(shuō)可以切換 brew 的源到中科大 CDN,本人親測(cè):中科大 CDN 雖然快很多,但是clone 下來(lái)的文件和原本源存在一定差異,更新不及時(shí)。個(gè)人建議還是耐心等待,使用原本的源)
1.2 Oh my zsh
目前常用的 Linux 系統(tǒng)和 Mac OS 系統(tǒng)的默認(rèn) Shell 都是 bash,但是真正強(qiáng)大的 Shell 是深藏不露的 zsh,史稱(chēng)『終極 Shell』,這玩意兒就像「X天 Php 從入門(mén)到放棄」系列,但這次是真的神功速成。Github:https://github.com/robbyrusse...
安裝方法(打開(kāi) Terminal 終端,輸入):
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
人在天朝的話(huà),極有可能出現(xiàn)安裝速度過(guò)于緩慢的情況,有時(shí)候會(huì)讓你感覺(jué)安裝處于假死的狀態(tài),不必?fù)?dān)心,耐心等待即可,切不可心煩意亂的關(guān)閉終端窗口(網(wǎng)上有其他教程說(shuō)可以切換 brew 的源到中科大 CDN,本人親測(cè):中科大 CDN 雖然快很多,但是clone 下來(lái)的文件和原本源存在一定差異,更新不及時(shí)。個(gè)人建議還是耐心等待,使用原本的源)
1.3 Xcode
Xcode 是蘋(píng)果出品的包含一系列工具及庫(kù)的開(kāi)發(fā)套件。
通過(guò) AppStore 安裝最新版本的 Xcode
我們一般不會(huì)用 Xcode 來(lái)開(kāi)發(fā)后端項(xiàng)目。但這一步也是必須的,因?yàn)?Xcode 會(huì)附帶安裝一些如 Git 等必要的軟件
1.3.1 Command Line Tools for Xcode
這一步會(huì)幫你安裝許多常見(jiàn)的基于 Unix 的工具。Xcode 命令行工具作為 Xcode 的一部分,包含了 GCC 編譯器
安裝方法(打開(kāi) Terminal 終端,輸入):
xcode-select --install
當(dāng) Xcode 和 Xcode Command Line Tools 安裝完成后,你需要啟動(dòng) Xcode,并點(diǎn)擊同意接受許可協(xié)議,然后關(guān)閉 Xcode 就可以了。這一步驟也是必須的,否則 Xcode 包含的一系列開(kāi)發(fā)工具都將不可用。
Working On
安裝 Mysql、Php72、redis、Nginx、創(chuàng)建虛擬機(jī)、配置 SSL
2.1 Mysql
安裝方法(打開(kāi) Terminal 終端,輸入):
brew install mysql
MySQL的安裝包相對(duì)較大,在這個(gè)步驟需要等待一段時(shí)間,下載失敗后可多次嘗試安裝,Brew每次會(huì)自動(dòng)尋找合適的下載源
設(shè)置 Mysql 開(kāi)機(jī)啟動(dòng)方法(打開(kāi) Terminal 終端,輸入):
ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
初始化、啟動(dòng)方法(打開(kāi) Terminal 終端,輸入):
#正常初始化 /usr/local/opt/mysql/bin/mysql_secure_installation #若出錯(cuò)請(qǐng)啟動(dòng)服務(wù) brew services start mysql
安全配置方法(Terminal 終端會(huì)提示[EnglishVersion]):
> Enter current password for root (enter for none): #直接 Enter,因?yàn)闆](méi)有設(shè)置過(guò) > Change the root password? [Y/n] #是否更改 root 用戶(hù)的密碼 > Remove anonymous users? [Y/n] #不需要,鍵入 Y > Disallow root login remotely? [Y/n] #禁止root遠(yuǎn)程登錄,建議鍵入 Y > Remove test database and access to it? [Y/n] #刪除測(cè)試數(shù)據(jù)表,建議鍵入 Y > Reload privilege tables now? [Y/n] #確保設(shè)置生效,鍵入 Y
檢驗(yàn)安裝成功方法(打開(kāi) Terminal 終端,輸入):
#查看端口 ps aux | grep mysql #測(cè)試 Mysql 連接 mysql -uroot -p你設(shè)置的密碼 為了直觀(guān),這里我以密碼:123456為例,測(cè)試Mysql連接時(shí)鍵入: mysql -uroot -p123456
安裝 Phpmyadmin 方法(打開(kāi) Terminal 終端,輸入):
brew install phpmyadmin
2.2 Php
安裝準(zhǔn)備(打開(kāi) Terminal 終端,輸入):
brew tap homebrew/dupes brew tap homebrew/versions brew tap homebrew/homebrew-php
安裝 Php72(打開(kāi) Terminal 終端,輸入):
brew install php72
配置 Php72 環(huán)境變量(打開(kāi) Terminal 終端,輸入):
echo "export PATH="$(brew --prefix php72)/bin:$PATH"" >> ~/.bash_profile echo "export PATH="$(brew --prefix php72)/sbin:$PATH"" >> ~/.bash_profile echo "export PATH="/usr/local/bin:/usr/local/sbib:$PATH"" >> ~/.bash_profile source ~/.bash_profile
由于Mac自帶了php和php-fpm,因此需要添加系統(tǒng)環(huán)境變量PATH來(lái)替代自帶PHP版本。
驗(yàn)證 Php72 配置(打開(kāi) Terminal 終端,輸入):
#brew安裝的php,正常會(huì)顯示 php7.2.0betaX php -v#Mac自帶的Php,正常會(huì)顯示 php7.1.7 /usr/bin/php -v#brew安裝的php-fpm,正常會(huì)顯示 php7.2.0betaX php-fpm -v#Mac自帶的Php-fpm,正常會(huì)顯示 php7.1.7 /usr/bin/php-fpm -
修改php-fpm配置文件(打開(kāi) Terminal 終端,輸入):
vim /usr/local/etc/php/7.2/php-fpm.conf /**找到pid相關(guān),去掉pid = run/php-fpm.pid前的“;”, 那么php-fpm的pid文件就會(huì)自動(dòng)產(chǎn)生在 /usr/local/var/run/php-fpm.pid**/
php-fpm驗(yàn)證與啟動(dòng)(打開(kāi) Terminal 終端,輸入):
#測(cè)試php-fpm配置 php-fpm -t php-fpm -c /usr/local/etc/php/7.2/php.ini -y /usr/local/etc/php/7.2/php-fpm.conf -t #啟動(dòng)php-fpm php-fpm -D php-fpm -c /usr/local/etc/php/7.2/php.ini -y /usr/local/etc/php/7.2/php-fpm.conf -D #關(guān)閉php-fpm kill -INT `cat /usr/local/var/run/php-fpm.pid` #重啟php-fpm kill -USR2 `cat /usr/local/var/run/php-fpm.pid`
如果出現(xiàn)兩個(gè)[notice],不用管,除了他們沒(méi)有其他錯(cuò)誤的花,php-fpm 是可以正常啟動(dòng)了。如果出現(xiàn)其他錯(cuò)誤,請(qǐng)嘗試百度搜索,或者來(lái)聯(lián)系我
php-fpm設(shè)置開(kāi)機(jī)啟動(dòng)(打開(kāi) Terminal 終端,輸入):
ln -sfv /usr/local/opt/php72/*.plist ~/Library/LaunchAgents launchctl load ~/Library/LaunchAgents/homebrew.mxcl.php56.plist
安裝 composer(打開(kāi) Terminal 終端,輸入):
curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer #改為國(guó)內(nèi)源 composer config -g repo.packagist composer https://packagist.phpcomposer.com
2.3 Nginx
安裝 Nginx 方法(打開(kāi) Terminal 終端,輸入):
brew install nginx
Nginx的安裝包相對(duì)較大,在這個(gè)步驟需要等待一段時(shí)間,下載失敗后可多次嘗試安裝,Brew每次會(huì)自動(dòng)尋找合適的下載源
啟動(dòng) Nginx 方法(打開(kāi) Terminal 終端,輸入):
#測(cè)試nginx配置是否有語(yǔ)法錯(cuò)誤 nginx -t #打開(kāi) nginx sudo nginx #重新加載配置|重啟|停止|退出 nginx nginx -s reload|reopen|stop|quit #也可以使用Mac的launchctl來(lái)啟動(dòng)|停止 nginx launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist
設(shè)置 Nginx 開(kāi)機(jī)啟動(dòng)方法(打開(kāi) Terminal 終端,輸入):
ln -sfv /usr/local/opt/nginx/*.plist ~/Library/LaunchAgents launchctl load ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist
設(shè)置 Nginx 監(jiān)聽(tīng)端口權(quán)限(打開(kāi) Terminal 終端,輸入):
sudo chown root:wheel /usr/local/Cellar/nginx/1.12.1/bin/nginx sudo chmod u+s /usr/local/Cellar/nginx/1.12.1/bin/nginx
配置Nginx.conf(打開(kāi) Terminal 終端,輸入):
#配置需要用到的目錄 mkdir -p /usr/local/var/logs/nginx 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 #使用 vim 編輯器編輯 nginx.conf vim /usr/local/etc/nginx/nginx.conf #nginx.conf 文件中此段內(nèi)容部分,輸入或修改為以下內(nèi)容 pid /usr/local/var/run/nginx.pid; events { worker_connections 256; } 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/var/logs/access.log main; sendfile on; keepalive_timeout 65; port_in_redirect off; include /usr/local/etc/nginx/sites-enabled/*; }
vim 編輯器的退出并保存:按 ECS => 按 CAPS LOCK(大寫(xiě)鍵) => 按兩下 Z
配置php-fpm 配置文件(打開(kāi) Terminal 終端,輸入):
#使用 vim 編輯器編輯 php-fpm 配置 vim /usr/local/etc/nginx/conf.d/php-fpm #寫(xiě)入以下內(nèi)容 location ~ .php$ { try_files $uri = 404; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_intercept_errors on; include /usr/local/etc/nginx/fastcgi.conf; }
nginx 虛擬機(jī)配置(打開(kāi) Terminal 終端,輸入):
#創(chuàng)建 info.php index.html 404.html 403.html文件到 /var/www 下面 vi /var/www/info.php //輸入: vi /var/www/index.html //輸入:Default Page Default
vi /var/www/403.html //輸入:403 Page Default
vi /var/www/404.html //輸入:404 Page Default
配置虛擬主機(jī)配置文件(打開(kāi) Terminal 終端,輸入):
#使用 vim 編輯器編輯虛擬主機(jī)配置 vim /usr/local/etc/nginx/sites-available/default #輸入以下內(nèi)容 server { listen 80; server_name localhost; root /var/www/; access_log /usr/local/var/logs/nginx/default.access.log main; location / { index index.html index.htm index.php; autoindex on; 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; }
配置SSL虛擬主機(jī)配置文件(打開(kāi) Terminal 終端,輸入):
#使用 vim 編輯器編輯SSL虛擬主機(jī)配置 vim /usr/local/etc/nginx/sites-available/default-ssl #輸入以下內(nèi)容 server { listen 443; server_name localhost; root /var/www/; access_log /usr/local/var/logs/nginx/default-ssl.access.log main; ssl on; ssl_certificate ssl/localhost.crt; ssl_certificate_key ssl/localhost.key; ssl_session_timeout 5m; ssl_protocols SSLv2 SSLv3 TLSv1; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; 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; }
配置phpmyadmin虛擬主機(jī)配置文件(打開(kāi) Terminal 終端,輸入):
#使用 vim 編輯器編輯phpmyadmin虛擬主機(jī)配置 vim /usr/local/etc/nginx/sites-available/phpmyadmin #輸入以下內(nèi)容 server { listen 306; server_name localhost; root /usr/local/share/phpmyadmin; error_log /usr/local/var/logs/nginx/phpmyadmin.error.log; access_log /usr/local/var/logs/nginx/phpmyadmin.access.log main; ssl on; ssl_certificate ssl/phpmyadmin.crt; ssl_certificate_key ssl/phpmyadmin.key; ssl_session_timeout 5m; ssl_protocols SSLv2 SSLv3 TLSv1; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { index index.html index.htm index.php; include /usr/local/etc/nginx/conf.d/php-fpm; } }
這里 phpmyadmin 默認(rèn)設(shè)置為306端口,且開(kāi)啟 ssl
配置 SSL(打開(kāi) Terminal 終端,輸入):
mkdir -p /usr/local/etc/nginx/ssl openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 -subj "/C=US/ST=State/L=Town/O=Office/CN=localhost" -keyout /usr/local/etc/nginx/ssl/localhost.key -out /usr/local/etc/nginx/ssl/localhost.crt openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 -subj "/C=US/ST=State/L=Town/O=Office/CN=phpmyadmin" -keyout /usr/local/etc/nginx/ssl/phpmyadmin.key -out /usr/local/etc/nginx/ssl/phpmyadmin.crt
創(chuàng)建虛擬主機(jī)軟連接并開(kāi)啟(打開(kāi) Terminal 終端,輸入):
ln -sfv /usr/local/etc/nginx/sites-available/default /usr/local/etc/nginx/sites-enabled/default ln -sfv /usr/local/etc/nginx/sites-available/default-ssl /usr/local/etc/nginx/sites-enabled/default-ssl ln -sfv /usr/local/etc/nginx/sites-available/phpmyadmin /usr/local/etc/nginx/sites-enabled/phpmyadmin
重新裝載 nginx(打開(kāi) Terminal 終端,輸入):
sudo nginx -s reload
可能會(huì)要求輸入密碼
測(cè)試 nginx 開(kāi)啟情況(打開(kāi)瀏覽器,地址欄輸入):
http://localhost http://localhost/info.php http://localhost/404.html https://localhost/index.html(SSL) https://localhost/info.php(SSL) https://localhost/404.html(SSL) https://localhost:306(SSL)
2.4 Redis
安裝方法(打開(kāi) Terminal 終端,輸入):
brew install redis
人在天朝的話(huà),極有可能出現(xiàn)安裝速度過(guò)于緩慢的情況,有時(shí)候會(huì)讓你感覺(jué)安裝處于假死的狀態(tài),不必?fù)?dān)心,耐心等待即可,切不可心煩意亂的關(guān)閉終端窗口(網(wǎng)上有其他教程說(shuō)可以切換 brew 的源到中科大 CDN,本人親測(cè):中科大 CDN 雖然快很多,但是clone 下來(lái)的文件和原本源存在一定差異,更新不及時(shí)。個(gè)人建議還是耐心等待,使用原本的源)
開(kāi)啟 Redis方法(打開(kāi) Terminal 終端,輸入):
redis-server
之后進(jìn)入了管理模式,如果看到Ready to accept connections,說(shuō)明安裝運(yùn)行成功,直接關(guān)閉終端再打開(kāi)即可
安裝 Php-Redis方法(打開(kāi) Terminal 終端,輸入):
wget https://pecl.php.net/get/redis-3.1.3.tgz tar -zxvf redis-3.1.3.tgz cd redis-3.1.3 phpize ./configure make make install
修改 php.ini方法(打開(kāi) Terminal 終端,輸入):
#使用 vim 編輯器編輯 php.ini vi /usr/local/etc/php/7.2/php.ini //在文件最后加入extension=redis.so
#重啟 php-fpm sudo killall php-fpm && sudo php-fpm -D #查看是否安裝成功 php -m |grep redis
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/39681.html
摘要:一些關(guān)于在最新下搭建開(kāi)發(fā)環(huán)境的流程建議,直接進(jìn)入正題安裝開(kāi)發(fā)常用包軟件又叫,是上的軟件包管理工具,能在中方便的安裝軟件或者卸載軟件,和系統(tǒng)中的非常相似,只需要一個(gè)命令,非常方便。 一些關(guān)于在最新 Macos 下搭建LNMP開(kāi)發(fā)環(huán)境的流程建議,直接進(jìn)入正題: Preparing安裝 Homebrew、Ohmyzsh、開(kāi)發(fā)常用包&軟件 1.1 Homebrew Homebrew又叫Br...
摘要:安裝是蘋(píng)果出品的包含一系列工具及庫(kù)的開(kāi)發(fā)軟件。通過(guò)安裝最新版本的。如果你的是之前的版本的話(huà),在你編譯的時(shí)候會(huì)提示你更新版本我們一般不會(huì)用來(lái)開(kāi)發(fā)項(xiàng)目。命令行工具作為的一部分,包含了編譯器。 showImg(https://segmentfault.com/img/bVbsoUj?w=640&h=426); 用了快三年的Mac Pro出現(xiàn)問(wèn)題,蘋(píng)果公司幫忙換了一臺(tái)全新的,所以沒(méi)辦法,只能重...
摘要:安裝是蘋(píng)果出品的包含一系列工具及庫(kù)的開(kāi)發(fā)軟件。通過(guò)安裝最新版本的。如果你的是之前的版本的話(huà),在你編譯的時(shí)候會(huì)提示你更新版本我們一般不會(huì)用來(lái)開(kāi)發(fā)項(xiàng)目。命令行工具作為的一部分,包含了編譯器。 showImg(https://segmentfault.com/img/bVbsoUj?w=640&h=426); 用了快三年的Mac Pro出現(xiàn)問(wèn)題,蘋(píng)果公司幫忙換了一臺(tái)全新的,所以沒(méi)辦法,只能重...
閱讀 1322·2021-09-22 15:24
閱讀 2378·2019-08-30 15:44
閱讀 2752·2019-08-30 10:55
閱讀 3438·2019-08-29 13:25
閱讀 1784·2019-08-29 13:09
閱讀 1476·2019-08-26 14:05
閱讀 1525·2019-08-26 13:58
閱讀 2066·2019-08-26 11:57