Apache 中的子域名端口

Apache 中的子域名端口

我目前有一个在端口 8000 上运行 Python Web 应用程序的服务器。它可以在 Web 上公开访问(在服务器的 IP 上),没有任何问题。

我想让这个 Web 应用程序在子域上可用,这样您就不必访问 IP 地址即可运行 Web 应用程序。我已经设法打开一个子域来镜像根目录上的内容,但是如何使用 Apache 通过该子域路由我的 Python Web 应用程序?

谢谢你的帮助。

答案1

这实际上就是我所寻找的。

<VirtualHost *:80>
ServerName subdomain.yourdomain.com
ProxyPreserveHost on
ProxyPass / http://localhost:8080/
</VirtualHost>

答案2

如果您的 DNS 配置正确,并且您的子域名my-app.example.com指向您的服务器的 IP 地址,人们可以立即使用http://my-app.example.com:8000/它来代替http://<your ip-address>:8000

如果您已经在默认的 http 端口(TCP 端口 80)上建立了任何现有网站,则无法让您的 Web 应用直接监听端口 80。相反,您可以使用 Apache 的反向代理功能,这样人们就无需输入端口号:8000,就可以使用以下方式从默认 HTTP 端口访问您的应用http://my-app.example.com/

设置新的虚拟主机my-app.example.com

<VirtualHost *:80>
   ServerName my-app.example.com
   ProxyPass / http://127.0.0.1:8000/
   ProxyPassReverse / http://127.0.0.1:8000/
</VirtualHost> 

相关内容