前言
不需要(自己)安裝nginx,不需要各種服務(wù)器配置,就2個(gè)命令,讓你的mac Nginx+PHP環(huán)境跑起來。
簡(jiǎn)介
Valet 是Laravel在 mac下的一個(gè)極簡(jiǎn)開發(fā)環(huán)境。去掉了Vagrant,/etc/hosts。 你可以通過通道方便的分享你的站點(diǎn)到公網(wǎng)環(huán)境。
Laravel Valet通過后臺(tái)運(yùn)行的nginx,使用 DnsMasq轉(zhuǎn)發(fā)請(qǐng)求到你本地環(huán)境
換句話說,通過Valet 一個(gè) Laravel開發(fā)環(huán)境將僅僅占用7MB內(nèi)存
Valet 支持但不局限于運(yùn)行這些框架
安裝
Valet 依賴于 macOS 和 Homebrew.在安裝之前,你應(yīng)該確保Apache或者Nginx沒有綁定主機(jī)的80端口
- 安裝并升級(jí)你的 Homebrew. 終端命令
$ brew update - 安裝php7.1 使用Homebrew 終端命令
$ brew install homebrew/php/php71 - 通過Composer全局安裝Valet 終端命令
$ composer global require laravel/valet。并確保~/.composer/vendor/bin在你系統(tǒng)的環(huán)境變量中. - 運(yùn)行
$ valet install命令. 將會(huì)開始配置安裝你的Valet和DnsMasq.并注冊(cè)守護(hù)進(jìn)程.

安裝完成之后,測(cè)試一下,ping *.dev
$ ping test.dev
如果返回 127.0.0.1代表安裝成功
指定其他的域名
Valet默認(rèn)在項(xiàng)目中使用*.dev TLD.如果你想使用其他的域名代替*.dev.你可以執(zhí)行命令$ valet domain tld-name 命令。
舉個(gè)栗子。使用 *.app 替換 .dev.
$ valet domain app
現(xiàn)在的你valet項(xiàng)目將自動(dòng)在 *.app上運(yùn)行
數(shù)據(jù)庫(kù)
如果你需要安裝一個(gè)數(shù)據(jù)庫(kù),你可以嘗試執(zhí)行
$ brew install mariadb
然后使用brew services start mariadb啟動(dòng)之
升級(jí)
你如果需要升級(jí)Valet, 僅僅只需要執(zhí)行
$ composer global update
$ valet install
站點(diǎn)配置
安裝完成Valet之后,我們可以使用兩個(gè)命令來管理站點(diǎn)。 park 和 link
使用park命令
- 建立一個(gè)目錄,執(zhí)行命令
valet park. 就這么簡(jiǎn)單
$ mkdir ~/Sites
$ cd ~/Sites
$ valet park
$ laravel new blog
現(xiàn)在使用瀏覽器打開http://blog.dev訪問這個(gè)項(xiàng)目。 這就是park的簡(jiǎn)單實(shí)用方法。
以后添加進(jìn)來的項(xiàng)目。直接在文件夾下新建,就可以自動(dòng)映射。訪問入口 http://文件夾名.dev
使用link命令
link有點(diǎn)類似linux的ln -s. 在你的自定義項(xiàng)目中運(yùn)行此命令,將會(huì)自動(dòng)在park目錄下建立一個(gè)同步鏈接。我們僅僅需要執(zhí)行 valet link 項(xiàng)目名如下
$ mkdir ~/test
$ echo '<?php phpinfo(); ?>' > ~/test/index.php
$ valet link test_pro
通過瀏覽器打開http://test_pro.h 就能看到phpinfo頁(yè)面了
任意位置運(yùn)行$ valet links可以查看已經(jīng)建立的鏈接
刪除鏈接可以運(yùn)行命令valet unlink test_pro
使用https
運(yùn)行valet secure 項(xiàng)目名使項(xiàng)目支持https
運(yùn)行valet unsecure 項(xiàng)目名關(guān)閉項(xiàng)目https
分享站點(diǎn)
Valet可以在不包含別的控件下,和外網(wǎng)分享你的本地站點(diǎn)(僅支持非https),
進(jìn)入項(xiàng)目目錄,運(yùn)行命令valet share

Valet直接內(nèi)建了一個(gè)ngrok,不知道以后會(huì)不會(huì)收費(fèi),現(xiàn)在ngrok已經(jīng)商用了。
現(xiàn)在我們就可以直接通過下面的外網(wǎng)地址,把我們的站點(diǎn)分享出去了,可以很方便的用來本地調(diào)試和開發(fā)微信相關(guān)接口.
停止分享 Controller + C
自定義Valet驅(qū)動(dòng)
valet驅(qū)動(dòng)文件在~/.valet/Drivers下,我們可以根據(jù)相關(guān)需求進(jìn)行自定義
其他的Valet命令
| 命令 | 描述 |
|---|---|
valet forget |
在已經(jīng)parked的目錄進(jìn)行,將把此目錄從parked 站點(diǎn)中移除 |
valet paths |
查看parked目錄 |
valet restart |
重啟valet守護(hù)進(jìn)程 |
valet start |
啟動(dòng)valet守護(hù)進(jìn)程 |
valet stop |
停止valet守護(hù)進(jìn)程 |
valet uninstall |
卸載valet守護(hù)進(jìn)程 |
參考資料