Apache在公共路由器ip和内部服务器ip的情况下运行wsgi模块(Django应用程序)两次?

2024-10-03 15:28:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我们已经完成了下面的netwrok设置 内部服务器ip:192.168.153.20:443 公共路由器ip:111.93.87.11:26060

我们在路由器中有端口转发:111.93.87.11:26060到192.168.153.20:443

因此,当我们第一次访问192.168.153.20:443(内部服务器ip)时,它运行/执行django应用程序(第一次) 现在,当我们访问111.93.87.11:26060(公共路由器ip)时,由于端口转发,它会到达内部服务器ip,但apache会收到host:111.93.87.11:26060,apache第二次执行/运行整个django应用程序

因此,我们的应用程序实际上是为ip运行两次,即内部ip和公共路由器ip。 这是一个非常关键的问题。 这可能是由于Apache配置造成的。 我们需要为内部和外部IP运行单个实例。但Apache似乎正在解析主机名并为新的外部IP运行不同的实例

供参考 图片 Apache configuration 中附加的Apache配置


Tags: django实例端口ip服务器应用程序hostapache
1条回答
网友
1楼 · 发布于 2024-10-03 15:28:57

实际上,我们必须在服务器名中添加/提供公共IP,因为当任何请求出现时,它都会检查并匹配服务器名,如果找到了,那么它将执行相同的操作,并且要传递请求,我们必须使用ProxyPass

使用SSL的最终公共路由器ip 在httpd ssl.conf文件的下面几行中添加

你知道吗 服务器名111.93.87.11 S长度开 SSLProxyEngine开启 SSLCertificateFile“/usr/local/vcs/cert/certs/DefaultServerCert\u vcs.pem” SSLCertificateKeyFile“/usr/local/vcs/cert/certs/key/DefaultServerCert\u vcs.key” 代理传递“/”https://192.168.153.120:443/“ 你知道吗

相关问题 更多 >