一多望、mac安裝nginx php7 mysql 環(huán)境

Homebrew官網(wǎng)

//查看版本
brew -v

//安裝homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

國內(nèi)Homebrew鏡像剧蹂,更換鏡像源加速:

cd "$(brew --repo)"
git remote set-url origin https://mirrors.ustc.edu.cn/brew.git

brew update

brew -v

安裝 啟動 nginx

brew cleanup  //移除舊版本

brew install nginx
//啟動nginx,如果更新安裝nginx,啟動時常會提示沒有權(quán)限醒串,則刪除之前的logs文件夾中的文件等
sudo nginx   //啟動
//查看狀態(tài)
ps -ef|grep nginx
nginx -V
sudo nginx -s reload  //重新加載配置
sudo nginx -s stop    //關(guān)閉
lsof -i tcp:80        //查看80端口占用情況
ps aux | grep nginx  //查看nginx進程

配置nginx 虛擬主機执桌,通過域名訪問本地web項目

//瀏覽器輸入一個url,首先會去找本地hosts中該域名配置的ip

vi /private/etc/hosts
127.0.0.1       www.dtemp.com

//修改nginx配置文件芜赌,使其包含虛機目錄下所有配置文件

// /usr/local/etc/nginx/nginx.conf文件中最后一行 } 大括號前增加下面這句

include servers/*;

vi /usr/local/etc/nginx/servers/dtemp

server {
listen 80;
server_name  www.dtemp.com;
root /Users/free/www/learnlaravel/;

access_log /usr/local/var/logs/nginx/dtemp.access.log;
location / {
    if (!-e $request_filename){
        rewrite ^/(.*) /index.php last;
    }
    index index.html index.htm index.php;
    autoindex on;
    include /usr/local/etc/nginx/conf.d/php-fpm;
  }

} 


//  /usr/local/etc/nginx/conf.d/php-fpm 該文件內(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;
}

//以上內(nèi)容表示如果nginx接到的請求是.php結(jié)尾的php程序仰挣,
//則將請求轉(zhuǎn)發(fā)到本機9000端口,而這個端口是php-fpm在監(jiān)聽缠沈,
//當(dāng)未安裝php時膘壶,請求www.dtemp.com會返回502錯誤

瀏覽器地址欄輸入地址,請求流程


例如:http://www.dtemp.com/test.php
url包含:

  1. 協(xié)議【http/https等】
  2. ip/域名【www.dtemp.com】端口【80/8080等博烂,默認80可以省略】
  3. uri【/test.php】

瀏覽器地址欄輸入url后回車香椎,就會發(fā)送請求,首先會去本機hosts找該域名對應(yīng)的ip禽篱,沒有則會找dns域名服務(wù)器畜伐,拿到對應(yīng)ip,找到網(wǎng)絡(luò)中要訪問的那臺電腦躺率,uri則說明了要訪問目標(biāo)電腦上的資源路徑玛界。


通過找本機hosts,發(fā)現(xiàn) www.dtemp.com 對應(yīng)ip為127.0.0.1悼吱,即本機慎框,我們使用的nginx配置監(jiān)聽80端口,所以請求被nginx接收后添。nginx根據(jù)web根目錄配置和uri /test.php笨枯,即可找到該資源。發(fā)現(xiàn)是請求的是php文件遇西,則轉(zhuǎn)發(fā)請求到9000端口馅精,交給了php-fpm。php-fpm處理完成后返回給nginx粱檀,nginx將結(jié)果通過http返回給瀏覽器

搜索安裝php

brew search php
brew install php@7.2
php -v //查看版本
php -m //查看擴展
//安裝完php7會輸出以下內(nèi)容洲敢,實際是一個簡單guid,
//執(zhí)行 brew services start php@7.2啟動php-fpm


The php.ini and php-fpm.ini file can be found in:
    /usr/local/etc/php/7.2/

php@7.2 is keg-only, which means it was not symlinked into /usr/local,
because this is an alternate version of another formula.

If you need to have php@7.2 first in your PATH run:
//*執(zhí)行下面兩行命令茄蚯,就會將php7命令路徑加入環(huán)境變量

  echo 'export PATH="/usr/local/opt/php@7.2/bin:$PATH"' >> ~/.bash_profile
  echo 'export PATH="/usr/local/opt/php@7.2/sbin:$PATH"' >> ~/.bash_profile

For compilers to find php@7.2 you may need to set:
  export LDFLAGS="-L/usr/local/opt/php@7.2/lib"
  export CPPFLAGS="-I/usr/local/opt/php@7.2/include"


To have launchd start php@7.2 now and restart at login:
  brew services start php@7.2
Or, if you don't want/need a background service you can just run:
  php-fpm

laravel環(huán)境要求如下, 新建test.php在web目錄压彭,可以清楚看到php配置和擴展等信息

PHP >= 7.1.3
OpenSSL PHP Extension
PDO PHP Extension
Mbstring PHP Extension
Tokenizer PHP Extension
XML PHP Extension
Ctype PHP Extension
JSON PHP Extension
BCMath PHP Extension

test.php 內(nèi)容:
<?php phpinfo();?>

安裝mysql,通過官網(wǎng)下載社區(qū)版
https://dev.mysql.com/downloads/mysql/

 brew 覆蓋安裝老版本往往有些坑睦优,使用dmg安裝一路next簡易操作,只有一點需要注意壮不。
 老版連接mysql的客戶端使用的舊版加密汗盘,mysql8安裝時會默認選擇加強加密,可以選擇老版加密询一,避免更換客戶端衡未。

navicat 查看mysql數(shù)據(jù)庫很方便,推薦一個下載地址:
https://xclient.info/search/s/navicat/

創(chuàng)建用戶并分配某個庫的權(quán)限給該用戶家凯,項目中不要使用root賬戶

//*我mac安裝后mysql的路徑 
cd /usr/local/mysql-8.0.15-macos10.14-x86_64/bin
./mysql //進入mysql命令行模式
use mysql;//進入mysql系統(tǒng)庫
//創(chuàng)建名為freeuser的用戶缓醋,%表示可以遠程操作,ip不限绊诲。
CREATE USER 'freeuser'@'%' IDENTIFIED BY 'free99';
//分配learnlaravel庫的所有權(quán)限給freeuser用戶
GRANT ALL PRIVILEGES ON learnlaravel.* TO 'freeuser'@'%';
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末送粱,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子掂之,更是在濱河造成了極大的恐慌抗俄,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,525評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件世舰,死亡現(xiàn)場離奇詭異动雹,居然都是意外死亡,警方通過查閱死者的電腦和手機跟压,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,203評論 3 395
  • 文/潘曉璐 我一進店門胰蝠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人震蒋,你說我怎么就攤上這事茸塞。” “怎么了查剖?”我有些...
    開封第一講書人閱讀 164,862評論 0 354
  • 文/不壞的土叔 我叫張陵钾虐,是天一觀的道長。 經(jīng)常有香客問我笋庄,道長效扫,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,728評論 1 294
  • 正文 為了忘掉前任直砂,我火速辦了婚禮菌仁,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘哆键。我一直安慰自己掘托,他們只是感情好瘦锹,可當(dāng)我...
    茶點故事閱讀 67,743評論 6 392
  • 文/花漫 我一把揭開白布籍嘹。 她就那樣靜靜地躺著闪盔,像睡著了一般。 火紅的嫁衣襯著肌膚如雪辱士。 梳的紋絲不亂的頭發(fā)上泪掀,一...
    開封第一講書人閱讀 51,590評論 1 305
  • 那天,我揣著相機與錄音颂碘,去河邊找鬼异赫。 笑死,一個胖子當(dāng)著我的面吹牛头岔,可吹牛的內(nèi)容都是我干的塔拳。 我是一名探鬼主播,決...
    沈念sama閱讀 40,330評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼峡竣,長吁一口氣:“原來是場噩夢啊……” “哼靠抑!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起适掰,我...
    開封第一講書人閱讀 39,244評論 0 276
  • 序言:老撾萬榮一對情侶失蹤颂碧,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后类浪,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體载城,經(jīng)...
    沈念sama閱讀 45,693評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,885評論 3 336
  • 正文 我和宋清朗相戀三年费就,在試婚紗的時候發(fā)現(xiàn)自己被綠了诉瓦。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,001評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡力细,死狀恐怖垦搬,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情艳汽,我是刑警寧澤猴贰,帶...
    沈念sama閱讀 35,723評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站河狐,受9級特大地震影響米绕,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜馋艺,卻給世界環(huán)境...
    茶點故事閱讀 41,343評論 3 330
  • 文/蒙蒙 一栅干、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧捐祠,春花似錦碱鳞、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,919評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽贵白。三九已至,卻和暖如春崩泡,著一層夾襖步出監(jiān)牢的瞬間禁荒,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,042評論 1 270
  • 我被黑心中介騙來泰國打工角撞, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留呛伴,地道東北人。 一個月前我還...
    沈念sama閱讀 48,191評論 3 370
  • 正文 我出身青樓谒所,卻偏偏與公主長得像热康,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子劣领,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,955評論 2 355

推薦閱讀更多精彩內(nèi)容