以下是有关我的环境的一些细节:
>运行macOS Sierra,PHP 7.1,MariaDB
>作曲家工作正常,并在路上
>代客2.0.3(撰写本文时最新)
>在首次安装和运行Valet之前,将MAMP更改为默认端口以释放端口80和3306
> Pinging something.dev应该返回127.0.0.1
>如果没有运行Web服务器,则在浏览器中运行something.dev不起作用
经过几个小时的搜索,摆弄,卸载并重新安装我现在处于非常奇怪的一切.如果MAMP在端口80和3306上运行,Valet将服务于something.dev,尽管我仍然在主页之外获得404.怎么会这样?是不是MAMP应该在其他端口上为Valet释放80和3306或根本不运行?另一个奇怪的事情是,something.dev将返回我的webroot,这是Valet停放的,而不是webroot下的站点something.dev.
我已经搜索过高低,我不知道如何让事情按照应有的方式运行
解决方法
您必须对Nginx安装/配置进行故障排除,因为这是Valet背后的服务器.
在代客安装之后第一次重启时,我已经完成了“代客不服务”问题.
首先检查您使用的是最新版本
$brew更新
$brew升级(如果你正在使用brew)
Nginx的第二个测试配置,可能存在一些权限问题:
$Nginx -t – 这将返回无法读取的“错误”路径.例如.将返回valet error.log或conf文件的路径.例如:
2017/02/04 16:32:31 [emerg] 17285#0:open()“/ Users /username/.valet/Log/Nginx-error.log”失败(13:权限被拒绝)
检查文件:$ls -l~ / .valet / Log / Nginx-error.log
-rw-r – r– 1 root staff 7842 Feb 4 15:54〜/ .valet / Log / Nginx-error.log
我的Nginx没有开始服务所有代客站点的原因是我的主目录中的错误日志由root拥有.使用chown命令(替换为实际用户名)更改此文件和其他文件的权限:
$sudo chown用户名:staff~ / .valet / Log / Nginx-error.log
更改权限后,重新启动Nginx:
$sudo Nginx -s stop&& sudo Nginx
如果命令将返回
Nginx:[错误]“/usr/local/var/run/Nginx.pid”中的PID编号“”无效,这是因为Nginx没有运行且没有PID,只需再次启动Nginx:
$sudo Nginx
现在测试你的代客网站. (当MAMP停止时)
下一个.确定端口并配置Valet和MAMP无冲突地工作.
希望这有帮助.