Ubuntu Nginx未获取web请求
我有一个rails应用程序正在为端口80提供资产,但rails应用程序本身正在3000上运行。为了解决这个问题,我使用nginx代理来自3000到80端口的自定义主机的请求,这非常有效,但我的应用程序也需要通配符dns 我为通配符dns安装了Ubuntu Nginx未获取web请求,ubuntu,nginx,Ubuntu,Nginx,我有一个rails应用程序正在为端口80提供资产,但rails应用程序本身正在3000上运行。为了解决这个问题,我使用nginx代理来自3000到80端口的自定义主机的请求,这非常有效,但我的应用程序也需要通配符dns 我为通配符dns安装了echoipdns: 一开始它还能工作,但我关闭了我的电脑(Ubuntu 14.04),然后又重新打开了它,并且没有互联网接入(能够ping外部ip的任何域) 发现/etc/resolv.conf被设置为nameserver127.0.0.1,这就是ech
echoipdns
:
一开始它还能工作,但我关闭了我的电脑(Ubuntu 14.04),然后又重新打开了它,并且没有互联网接入(能够ping外部ip的任何域)
发现/etc/resolv.conf被设置为nameserver127.0.0.1
,这就是echoipdns为使其能够使用自己的dns所做的更改
我通过将/etc/resolv.conf切换回nameserver 127.0.1.1
修复了internet问题,因此dnsmasq是dns服务器,并发现我可以明确地告诉echoipdns将所有非本地请求路由到另一个dns服务器,如下所示:sudo echoipdns development-f 127.0.1.1
,它将所有结束其开发的请求路由到它自己的dns(返回一个包含正确主机的A记录)以及dnsmasq处理127.0.1.1的所有其他请求
echoipdns和互联网正在运行,但是。。。Nginx没有提供任何服务
我卸载并重新安装了nginx,它现在有默认的virtualhost,但转到localhost
不提供nginx index.html,它不提供任何服务,甚至不提供“坏网关”。我没有在错误或访问日志中得到任何信息,所以这一定是某种网络问题
我不知道从哪里开始这个问题,所以任何帮助将不胜感激 这最终成为iptables的一个问题
我在“刷新所有规则,删除非默认链”下运行了以下命令:
这就解决了问题
Echoipdns设置预路由规则,将请求从端口80路由到20559,从端口443路由到20558
重置这些规则使nginx默认页面立即出现。您的/etc/hosts
怎么说?localhost是否仍指向127.0.0.1?是的,我还为代理设置了一个自定义主机:127.0.0.1 dev
发布您的nginx配置文件以进行进一步调查。nginx配置(包括vhost)目前完全可用。我完全删除了nginx并重新安装了它。