Valet 只支持 Mac,并且要求本地安装了 PHP 和数据库服务器,这可以通过使用 Homebrew 命令轻松实现(brew install php71以及brew install mysql),Valet 通过最小的资源消耗提供了一个极速的本地开发环境,如果你只需要 PHP/MySQL 并且不需要完整的虚拟化开发环境,那么 Valet 将是最好的选择。
Valet 要求 Mac 操作系统和 Homebrew。安装之前,需要确保没有其他程序如Apache 或 Nginx 绑定到本地的80端口。
1、安装Homebrew
打开terminal,输入以下命令
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
具体可参考:https://brew.sh/
安装成功后,使用brew update 更新Homebrew至最新版本。
通过运行 brew services list 确保 brew services 有效并且能获取到正确的输出,如果无效,则需要添加。
通过 Homebrew 安装 PHP 7.1: brew install homebrew/php/php71。
2、安装Composer
terminal里执行如下命令:
curl -sS https://getcomposer.org/installer | php
// 添加到bin目录
mv composer.phar /usr/local/bin/composer
通过 Composer 安装 Valet:
composer global require laravel/valet
(确保 ~/.composer/vendor/bin在系统路径中)
运行 valet install 命令,这将会配置并安装 Valet 和 DnsMasq,然后注册 Valet 后台随机启动。
如果遇到valet命令找不到的错误,首先查看系统路径
echo $PATH
然后将 composer/vendor/bin放入系统路径中
export PATH=$PATH:~/.composer/vendor/bin
安装完Valet后,尝试使用命令如 ping foobar.dev 在终端ping一下任意 *.dev 域名,如果Valet安装正确就会看到来自 127.0.0.1 的响应:
PING foobar.dev (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.069 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.077 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.072 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.082 ms
每次系统启动的时候 Valet 会在后台自动启动,而不需要再次手动运行 valet start 或 valet install。
3、服务站点
默认情况下,Valet 使用 .dev 域名后缀,例如,你想使用 .app 域名后缀取代.dev,运行 valet domain app,Valet 将会自动将站点域名后缀改为 *.app。
park命令
在Mac中创建一个新目录,例如 mkdir ~/Sites,然后进入这个目录并运行 valet park。这个命令会将当前所在目录作为 web 根目录。
接下来,在新建的目录中创建一个新的 Laravel 站点:
laravel new blog
如果遇到laravel命令找不到的情况可以这么解决:
composer global require "laravel/installer"
ln -s ~/.composer/vendor/bin/laravel /usr/local/bin/laravel
在浏览器中访问 http://blog.dev。
这就是我们要做的全部工作。现在,所有在 Sites 目录中创建的 Laravel 项目都可以通过 http://folder-name.dev 这种方式在浏览器中访问,是不是很方便?
link命令
link 命令也可以用于本地 Laravel 站点,当你想要在目录中提供单个站点时这个命令很有用。
要使用这个命令,先切换到你的某个项目并运行 valet link app-name,这样 Valet 会在 ~/.valet/Sites 中创建一个符号链接指向当前工作目录。
运行完 link 命令后,可以在浏览器中通过 http://app-name.dev 访问站点。
要查看所有的链接目录,可以运行 valet links 命令。你也可以通过 valet unlink app-name 来删除符号链接。