MAC、MAMP、127.0.0.1连接被拒绝、本地主机正常。

3
正如标题所述,我可以正常访问本地主机,但我的应用程序需要通过 127.0.0.1:8000 从 Twitter 获取回调,而 127.0.0.1:8000 显示“连接被拒绝”。
编辑:这似乎是一个 IPv6 冲突,我可以通过(Apache 端口)http://127.0.0.1:8888/ 访问我的本地服务器。
编辑编辑:如果我在端口 9000 上提供一个 Angular 应用程序,我可以使用浏览器中的 127.0.0.1:9000 正常访问它,但是如果我运行 php artisan serve --port=9000,我仍然会收到“连接被拒绝”的错误。
因此,我的问题已经明确为:如何使 php artisan serve(用于 Laravel 应用程序)与 http://127.0.0.1:8000/ 兼容?

Lewiss-MBP:stripe2 Lewis$ php artisan serve Laravel开发服务器已在http://localhost:8000/启动。

重点:

OSX YOSOMITE 10.10.5

MAMP(非专业版)设置为Apache而不是NGINX

etc/hosts: file -b /etc/hosts === ASCII英文文本

127.0.0.1 localhost 255.255.255.255 broadcasthost ::1 localhost

Lewiss-MBP:applications Lewis$ telnet -6 ::1 8000 </dev/null 正在尝试连接::1... 已连接到localhost。 转义字符为'^]'。 由外部主机关闭连接。

Lewiss-MBP:applications Lewis$ telnet -4 127.0.0.1 8000 </dev/null 正在尝试连接127.0.0.1... telnet: connect to address 127.0.0.1: Connection refused telnet: Unable to connect to remote host


2
你不能ping一个URL或端口。你只能通过IP地址或域名ping一个系统,而这个请求通常会被防火墙阻止。实际上,“ping”不是一个很好的工具来查找网络问题。它的原始目的是查看网络延迟。不多也不少。相反,可以使用像“telnet”,“host”,“dig”,“traceroute”这样的工具来查看。 - arkascha
1
可能只通过IPv6提供服务。尝试使用telnet -6 ::1 8000 </dev/nulltelnet -4 127.0.0.1 8000 </dev/null命令,看哪个会显示“Connected to ...”,哪个会显示“Connection refused”。 - Gordon Davisson
谢谢大家,两份出色的反馈。我已经尝试了Gordon的命令并更新了我的问题。我会搜索关于IPv6之类的信息以查看是否可以解决这个问题,但如果有人能给我这些命令,我将非常感激。 - Lewis
如果您已经解决了问题,请将解决方案发布为答案并将其标记为已接受。不要将其放入问题本身。 - deceze
1个回答

2

简述:在经过大量搜索后,如果我运行php artisan serve --host 0.0.0.0,我的应用程序可以正常工作,Twitter应用程序的回调到127.0.0.1也可以正常工作。问题必须出在Artisan如何监听端口上。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接