2020的正月,一個新年的開始搔涝,原本算是我新的十年的開始厨喂,但是由于突如其來的新型肺炎疫情的出現(xiàn),按下了暫停鍵庄呈。
上班蜕煌,延期了。
作死抒痒,開始了幌绍。
颁褂。故响。。
好吧颁独,言歸正傳彩届。。
宅在家里的這段時間誓酒,實在是把我憋壞了樟蠕。嗯贮聂。。準確的說把我腦子弄壞了寨辩。吓懈。因為我竟然重裝系統(tǒng)了。
由于距離上次搭環(huán)境已經(jīng)過去了很久(好吧靡狞,其實是我還不是很熟耻警。。)甸怕,這一次搭建環(huán)境很曲折甘穿,前前后后快折騰了一個星期。為了避免下次再折騰梢杭,就有了這一篇記錄温兼!
php
其實mac上自帶php
好了 我就偷個懶 就不裝了。武契。
emm 算了 其實要安裝其實也簡單 就執(zhí)行下面的這行命令募判。
brew install php
可能由于社會主義和諧的原因可能我們下載會失敗。咒唆。那么各位就自己想辦法兰伤。。我就不說了钧排。懂得都懂敦腔。
mysql
mysql的安裝可以用多種。恨溜。
- 使用homebrew
brew search mysql
brew install mysql
這里說一句符衔,目前mysql最新版本應該是8.0.15 。所以你執(zhí)行上面的代碼會給你安裝最新的mysql8.0.15
如果你想要安裝5.7 你可以執(zhí)行下面的命令
brew install mysql@5.7
- 安裝包安裝 [簡單粗暴 墻裂推薦T阍E凶濉!]
使用命令行安裝 雖然只需要敲一次代碼项戴,但是代價就是需要等待超長的時間形帮。。emm 比如我 前前后后下載了一天兩夜周叮。辩撑。當然中途因為莫名其妙的原因中斷了 第二天又得重新下。仿耽。實際上大概需要2個小時左右合冀。。
但是如果你使用安裝包安裝的話就很省心了项贺。君躺。
這里是 mysql下載鏈接
第一步:選擇需要的版本峭判。
第二步: 點擊下載
nginx
這個還是推薦Nginx下載吧,別問我為什么,問 就是懶 其他的沒試過棕叫。林螃。
brew install nginx
配置
這里就記下一個坑
如果你覺得nginx解析php配置沒問題,但是打開網(wǎng)址還是出現(xiàn)無法解析503 的時候 請檢查一下 php-fpm 有沒有打開
sudo php-fpm
嗯 下面提供一下我的兩套nginx 配置
server {
# 監(jiān)聽 HTTP 協(xié)議默認的 [80] 端口。
listen 80;
# 綁定主機名 [example.com]俺泣。
server_name oksweb.test;
# 服務器站點根目錄 [/example.com/public]治宣。
root /Users/ghosthao/code/work/oks/www/2.0/;
# 添加幾條有關安全的響應頭;與 Google+ 的配置類似砌滞,詳情參見文末侮邀。
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options "nosniff";
# 站點默認頁面;可指定多個贝润,將順序查找绊茧。
# 例如,訪問 http://example.com/ Nginx 將首先嘗試「站點根目錄/index.html」是否存在打掘,不存在則繼續(xù)嘗試「站點根目錄/index.htm」华畏,以此類推...
index index.html index.htm index.php;
# 指定字符集為 UTF-8
charset utf-8;
# Laravel 默認重寫規(guī)則;刪除將導致 Laravel 路由失效且 Nginx 響應 404尊蚁。
location / {
autoindex on;
# //開啟目錄瀏覽功能亡笑;
autoindex_exact_size off;
# //關閉詳細文件大小統(tǒng)計,讓文件大小顯示MB横朋,GB單位仑乌,默認為b;
autoindex_localtime on;
# //開啟以服務器本地時區(qū)顯示文件修改日期琴锭!
# try_files $uri $uri/ /index.php?$query_string;
}
# 關閉 [/favicon.ico] 和 [/robots.txt] 的訪問日志晰甚。
# 并且即使它們不存在,也不寫入錯誤日志决帖。
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
# 將 [404] 錯誤交給 [/index.php] 處理厕九,表示由 Laravel 渲染美觀的錯誤頁面。
error_page 404 /index.php;
# URI 符合正則表達式 [\.php$] 的請求將進入此段配置
location ~ \.php$ {
# 配置 FastCGI 服務地址地回,可以為 IP:端口扁远,也可以為 Unix socket。
fastcgi_pass 127.0.0.1:9000;
# 配置 FastCGI 的主頁為 index.php刻像。
fastcgi_index index.php;
# 配置 FastCGI 參數(shù) SCRIPT_FILENAME 為 $realpath_root$fastcgi_script_name畅买。
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
# 引用更多默認的 FastCGI 參數(shù)。
include fastcgi_params;
}
# 通俗地說绎速,以上配置將所有 URI 以 .php 結尾的請求皮获,全部交給 PHP-FPM 處理焙蚓。
# 除符合正則表達式 [/\.(?!well-known).*] 之外的 URI纹冤,全部拒絕訪問
# 也就是說洒宝,拒絕公開以 [.] 開頭的目錄,[.well-known] 除外
location ~ /\.(?!well-known).* {
deny all;
}
}
這是一套 web配置
server {
# 監(jiān)聽 HTTP 協(xié)議默認的 [80] 端口萌京。
listen 80;
# 綁定主機名 [example.com]雁歌。
server_name oksapi.test;
# 服務器站點根目錄 [/example.com/public]。
root /Users/ghosthao/code/work/oks/www/3.0/dev/public;
# 添加幾條有關安全的響應頭知残;與 Google+ 的配置類似靠瞎,詳情參見文末。
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options "nosniff";
# 站點默認頁面求妹;可指定多個乏盐,將順序查找。
# 例如制恍,訪問 http://example.com/ Nginx 將首先嘗試「站點根目錄/index.html」是否存在父能,不存在則繼續(xù)嘗試「站點根目錄/index.htm」,以此類推...
index index.html index.htm index.php;
# 指定字符集為 UTF-8
charset utf-8;
# Laravel 默認重寫規(guī)則净神;刪除將導致 Laravel 路由失效且 Nginx 響應 404何吝。
location / {
try_files $uri $uri/ /index.php?$query_string;
}
# 關閉 [/favicon.ico] 和 [/robots.txt] 的訪問日志。
# 并且即使它們不存在鹃唯,也不寫入錯誤日志爱榕。
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
# 將 [404] 錯誤交給 [/index.php] 處理,表示由 Laravel 渲染美觀的錯誤頁面坡慌。
error_page 404 /index.php;
# URI 符合正則表達式 [\.php$] 的請求將進入此段配置
location ~ \.php$ {
# 配置 FastCGI 服務地址黔酥,可以為 IP:端口,也可以為 Unix socket洪橘。
fastcgi_pass 127.0.0.1:9000;
# 配置 FastCGI 的主頁為 index.php絮爷。
fastcgi_index index.php;
# 配置 FastCGI 參數(shù) SCRIPT_FILENAME 為 $realpath_root$fastcgi_script_name。
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
# 引用更多默認的 FastCGI 參數(shù)梨树。
include fastcgi_params;
}
# 通俗地說坑夯,以上配置將所有 URI 以 .php 結尾的請求,全部交給 PHP-FPM 處理抡四。
# 除符合正則表達式 [/\.(?!well-known).*] 之外的 URI柜蜈,全部拒絕訪問
# 也就是說,拒絕公開以 [.] 開頭的目錄指巡,[.well-known] 除外
location ~ /\.(?!well-known).* {
deny all;
}
}
這是一套 laravel 接口的配置