題外話:前幾天,終於以原價一半的價格,將我那臺15版mbp在bbs上賣了出去。之因此用了「終於」這個詞兒,是我一直遲遲沒有下定決心賣掉它,可眼瞅着再不賣掉,又要掉價,何況個人新電腦,也終於下來了。php
話說這個mbp,我還真沒用多少,緣由是剛買完沒多久,公司電腦就下來了,加上當年各類軟件都缺乏mac版,用起來各類不順手,後來也就擱置了。不過,最近發現,時隔幾年,如今各類軟件已經出了mac版,加之原生的linux系統,用起來仍是挺爽的。html
拿到新mbp,第一件事就是搭環境,話說最新版的macOS10.14系統已經內置好了apache、php7.1六、git,真不愧是爲廣大開發們準備的本本啊。
不過爲了更順手,我沒有啓用自帶的apache,而是安裝了nginx,而且爲了嚐鮮,安裝了最新版的php7.3+mysql8.0,事實證實,在嚐鮮的同時,也要fix這些最新版帶來的bug or 兼容。
在使用git時,遇到了點小坑,在諮詢身邊一圈兒及度娘無果的狀況下,只好親自操刀,將其fix掉。mysql
1.先說php+nginx+mysql環境搭建,發現再也沒有比這篇文章寫的更全面的了,我就再也不累述,直接放url:
Mac OS X 系統自帶的 php-fpm 配置和 nginx、mysql 的安裝
http://lzw.me/a/mac-osx-php-fpm-nginx-mysql.html
Mac brew安裝redis
https://www.cnblogs.com/cloudshadow/p/mac_brew_install_redis.html
其間爬坑:
MAC下終端走代理的幾種方法(好比公司內網環境下須要配置)
https://www.jianshu.com/p/30ffeff2ce53
訪問本地php文件一直報404 file not found錯誤(已解決)
https://blog.csdn.net/u013957017/article/details/79819877
Mac自帶PHP啓動php-fpm問題解決
https://blog.csdn.net/zrainload/article/details/78962062?tdsourcetag=s_pcqq_aiomsg
mac用brew安裝mysql,設置初始密碼
https://www.jianshu.com/p/3996f6a2fa45?tdsourcetag=s_pcqq_aiomsg
mysql 8.0以上 新版本帳號密碼策略修改和密碼修改
https://www.cnblogs.com/hellozg/p/9333052.html?tdsourcetag=s_pcqq_aiomsg
nginx環境配置--**拒絕了咱們的鏈接請求
https://blog.csdn.net/Kano_W/article/details/79532004?tdsourcetag=s_pcqq_aiomsglinux
2.關於php7.3+mysql8.0兼容
php7.3 bug:Errors Installing Composer on macOS (JIT compilation Failed)
https://stackoverflow.com/questions/53690624/errors-installing-composer-on-macos-jit-compilation-failed?tdsourcetag=s_pcqq_aiomsg
mysql8.0之larave5.5l兼容:Laravel NO_AUTO_CREATE_USER 錯誤
https://blog.csdn.net/Dreamweaver9_0/article/details/81458307
遇到 MySQL 8.0.11 的一些坑
https://laravel-china.org/articles/10736/some-craters-in-mysql-8011
另外,mysql8.0強制表必須有主鍵,因此對於沒有主鍵的表,要先創建主鍵。nginx
3.關於啓動php+nginx+mysql+redis
第一種,能夠像第一篇文章中說的那樣,將這些功能加入到開機啓動命令裏。
我選擇了第二種,也就是將這些命令寫成一個shell腳本,這樣沒必要每次開機都啓動這些,在須要啓動時,執行一下sh就行了。
經過shell腳本啓動Nginx、Mysql、PHP服務
http://www.findme.wang/blog/detail/id/237.html
shell 自動重啓nginx php shell腳本
https://blog.csdn.net/u010098331/article/details/50855983?utm_source=blogxgwz3laravel
4.關於git
提及git,還真是一波三折,前邊說過,mac已經自帶了git,簡單配置下,就能夠pull下來代碼,但是在commit的時候,一直提示未配置name和email,配置時,又提示沒有.gitconfig權限,在分別問了度娘、身邊小夥伴、IT gg依然無果後,惆悵了半天,突然靈機一動:這不是個軟連接嘛,我把軟連接刪除試試,蒼天啊,果真刪除後能夠了!後來又一想,這不一直提示文件夾不存在嘛,我在home(~)目錄下創建一個叫dotfiles的文件夾試試,果真,這一招也管用!原來,mac下雖然已經加好了各類.配置文件的dotfiles目錄軟連接,卻沒有這個文件夾,因此一直沒法配置.文件!git
➜ php_proj git:(dev_20181107_exam) ✗ git config --global user.name "zhangsan"
error: 不能鎖定配置文件 /Users/zhangsan/.gitconfig: No such file or directory
➜ ls -la ~
lrwxr-xr-x 1 zhangsan staff 19 12 21 22:35 .gitconfig -> dotfiles/.gitconfigredis
5.其它工具:phpstorm、TextWrangler、navicat、sourceTree、laravel、dotfiles、php-version
mac下PHPStorm2018.2破解教程
https://blog.csdn.net/wm9028/article/details/82700221
另外,mac下沒有notepad++,推薦另一款文本編輯器:TextWrangler
Mac 下 MySQL 5.7 鏈接 navicat 中文亂碼問題終極解決方案
https://blog.csdn.net/chenyubo1996/article/details/52040487
SourceTree - A free Git & Mercurial client for Windows or Mac
https://www.sourcetreeapp.com/
Laravel 的開發環境 Valet
https://laravel-china.org/docs/laravel/5.5/valet/1286
Mac下安裝Laravel
https://www.jianshu.com/p/5b0718f1fe93
dotfiles新手教程
https://www.jianshu.com/p/7UJapk
dotfiles入門
https://www.jianshu.com/p/b88435465d23
mac下使用php-version快速切換php版本
https://blog.csdn.net/tiansidehao/article/details/78982164sql
6. 後記:
a. 考慮將此安裝過程打包成可一鍵安裝的shell腳本 or docker環境
b. brew安裝的php7.3中,已自帶了GD庫的freetype擴展,能夠用來生成水印docker
7. 感謝小夥伴推薦,發現已經有現成的php docker環境啦——Laradock
[ Laravel 5.5 文檔 ] 快速入門 —— 使用 Laradock 搭建基於 Docker 的 PHP 開發環境
https://laravelacademy.org/post/7691.html
Laradock配置安裝踩坑
http://www.javashuo.com/article/p-orkkopaj-dy.html