我有两个 Web 应用程序在同一台服务器上运行。每个应用程序都需要不同的端口号,但只有一个端口向公众开放。我的公司宁愿避免开放另一个端口,但仍希望这两个应用程序都是公开的,所以我正在尝试弄清楚如何让它们都运行。我对 Apache 了解一点,但我不知道如何设置它来做到这一点。我应该使用反向代理吗?还是有其他方法可以实现我的目标?
答案1
您可以使用 apache 虚拟主机。查看这一页。您可以将另一个子域名用于其他应用程序。无需购买新域名。此外,您无需更改端口号。例如,您可以使用:
# Ensure that Apache listens on port 80
Listen 80
# Listen for virtual host requests on all IP addresses
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /var/www/app1
ServerName app1.example.com
# Other directives here
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /var/www/app2
ServerName app2.example.com
# Other directives here
</VirtualHost>
在此示例中,app1 将驻留在/var/www/app1
,app2 将驻留在/var/www/app2