django uWSGI nginx部署问题:VPN和代理后没有公共访问

django uWSGI nginx部署问题:VPN和代理后没有公共访问,django,nginx,proxy,vpn,uwsgi,Django,Nginx,Proxy,Vpn,Uwsgi,我正在尝试使用uWSGI和nginx部署django应用程序 我按照教程一直学习到最后,除了从外部IP访问应用程序之外,一切似乎都很好 我还没有域名,因此我的相关nginx设置如下: server { listen 80; server_name ""; } 此外,我已禁用防火墙: iptables-S提供: -P INPUT ACCEPT -P FORWARD ACCEPT -P OUTPUT ACCEPT 现在,我正在部署的CentOs 6.7计算机无法直接访问inter

我正在尝试使用uWSGI和nginx部署django应用程序

我按照教程一直学习到最后,除了从外部IP访问应用程序之外,一切似乎都很好

我还没有域名,因此我的相关nginx设置如下:

server {
    listen 80;
    server_name "";
}
此外,我已禁用防火墙:

iptables-S
提供:

-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
现在,我正在部署的CentOs 6.7计算机无法直接访问internet,因为它位于代理之后(即,我需要执行
pip安装django--http_proxy=myproxy.mynet:myport
,它才能工作)

除此之外,我还尝试在nginx配置中使用proxy_pass。一次尝试:

http {

  upstream corporate_proxy  {
      server myproxy.mynet:myport;
  }

  server {
    listen 80;
    rewrite_log on;
    location / {
          proxy_set_header Host "";
          proxy_pass http://corporate_proxy;
    }
  }
}
最后,让我补充一点,我也不能从网络外部访问机器,因为它位于VPN内部。因此,为了ssh连接到它,我首先需要连接到VPN(通过客户端控制台)


我不太清楚所有这些VPN/代理是如何工作的,以及它如何影响nginx和外部请求之间的通信。欢迎提供任何解决方案或方法来进一步排除故障

我认为您关于代理通行证的配置不正确。请使用uwsgi_pass,因为您正在使用uwsgi运行django WebThank,但我正在使用它:。带有proxy_pass的部分只是一次尝试,我还没有共享我的整个配置文件,其中包括:`location/{uwsgi_pass django;include/path/to/your/mysite/uwsgi_params;#您安装的uwsgi_params文件}`。如前所述,应用程序正在正常运行,我可以在本地访问它。我无法从外部internet访问它。您无法从外部主机访问位于代理后面的服务器。代理只允许客户端访问外部资源,反之亦然。您的外部客户端必须登录到VPN才能访问您的web应用程序。@Selcuk谢谢,如果是这样的话,那将非常奇怪。这是一个为一家大型机构开发的web应用程序,他们给我分配了一台服务器,专门用于在internet上部署此应用程序……我不知道您的基础设施,但从您编写的内容来看,这似乎是不可能的。可能还有另一个对公众开放的接口。NginX(proxy_pass指令)的反向代理功能与此无关。