我是nginx的新手,我努力让我的configuration为反向代理工作。 我有一个节点的应用程序运行在本地主机:3010,我试图通过在这个应用程序在子域dev [.netename] .org的nginx服务页面。 让我们只是说dev.example.org为了可读性。 这里是我在站点中创build的一个文件的内容 – 可用的名为example.org(是这个文件的正确名称?):
server { server_name www.example.org example.org; } upstream app_dev.example.org { server 127.0.0.1:3010; } server { listen 0.0.0.0:80; server_name dev.example.org; access_log /var/log/nginx/dev.example.access.log; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-NginX-Proxy true; proxy_pass http://app_dev.example.org/; proxy_redirect off; } }
这主要是基于这个相关的问题: Node.js + Nginx – 现在是什么? 但是,当我尝试在浏览器中打开dev.example.org时,Chrome报告无法find该页面。 我可以ping dev.example.org并获得一个IP地址,所以服务器似乎是可用的,但我的nginxconfiguration不正确。 我创build了符号链接的网站启用和重新启动nginx,万一你以为我可能已经忘记了这些步骤。
所以我现在的想法是,我不是正确地指的子域,或者我的网站可用文件被命名为错误的。 任何推动正确的方向将不胜感激。
只要确保问题在nginx上,请尝试以下步骤:
在端口3030设置一个测试服务器,为系统doc文件夹或其他东西提供服务。
server { listen 3030 location / { root /usr/share/doc/; autoindex on; } } upstream simple_test { server 127.0.0.1:3030 }
然后使用下面的simple_test:
proxy_pass http://simple_test/;
如果您在访问dev.example.org时看到/usr/share/doc
dir列表,那么您的问题在节点端。
原来有东西阻塞了80端口! 解决这个和上面张贴的配置工作