Nat*_*ter 12 php laravel laravel-5 laravel-valet
更新:不要使用".dev".当这最初发布于2016年时,它很好.现在不是.首先将您的TLD更改为某些其他内容,例如".localhost"或其他任何内容.(此更改不会解决我的问题,但如果您仍在使用".dev",它可能会修复您的问题).
问题:我已经安装了Laravel Valet,除了我ping test.dev
(它只包含一个index.htm文件并且位于其中)之外它似乎都工作了~/Sites
,在挂了很长时间之后我得到了响应ping: cannot resolve test.dev: Unknown host
这是我已经做过的事情:
/etc/hosts
没有提到 test.dev
--with-fpm
$PATH
包含$PATH:$HOME/.composer/vendor/bin
sudo lsof -n -i:80 | grep LISTEN
返回caddy
procbrew services list
返回dnsmasq
并开始brew doctor
并且一切都很好valet paths
成功返回:
[
"/Users/nateritter/.valet/Sites",
"/Users/nateritter/Sites"
]
valet link
在test
目录中使用对此问题没有影响现在,除了这一切,我决定尝试所有的代客参数.valet share
似乎有点错误,这很有趣,但我不确定它与原始问题有什么关系.
ERROR: Tunnel 'command_line' specifies invalid address 'test.dev:80': unexpected '[' in address test.dev:80
在此之后,我得到21行,Failed to connect to 127.0.0.1 port 4040: Connection refused
然后是异常:
[Httpful\Exception\ConnectionErrorException]
Unable to connect to "http://127.0.0.1:4040/api/tunnels": 7 Failed to connect to 127.0.0.1 port 4040: Connection refused
fetch-share-url
Run Code Online (Sandbox Code Playgroud)
Nat*_*ter 23
问题最终与某些事情有关dnsmasq
.使用对另一个相关SO帖子的非常彻底的答案,我最终做了以下来解决我的问题:
brew unlink dnsmasq
brew install dnsmasq
brew prune
brew services restart dnsmasq
valet install
然后,在我做ping之前进行测试,我做了dig test.dev
并且响应包括:
;; ANSWER SECTION:
test.dev. 3599 IN A 127.0.53.53
Run Code Online (Sandbox Code Playgroud)
我不确定为什么IP是127.0.53.53而不是127.0.0.1但是当我做了ping test.dev
它确实返回...
PING test.dev (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.036 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.072 ms
Run Code Online (Sandbox Code Playgroud)
浏览test.dev也很有用.
有一点需要注意的是,我还没有考虑过index.htm
,valet/caddy没有将其识别为潜在的索引文件.不是问题的一部分,但需要注意一些有趣的事情.
Agu*_*ndo 19
我有同样的问题,一些brew服务被停止,运行此命令修复它:
sudo brew services start --all
Run Code Online (Sandbox Code Playgroud)