tha*_*hoc 5 reverse-proxy subdomain apache-2.2 ubuntu-12.04
我的问题与How to point a subdomain to local server with dynamic IP 相同。不同之处在于我确实有来自 ISP 的静态 IP,我认为我不需要使用 DynDNS,对吗?那我可以用什么代替呢?
我的目标是将每个子域指向不同的 Web 服务器,如下所示:
mydomain.com --> 192.168.1.100(主 Web 服务器)
sub1.mydomain.com --> 192.168.1.101(Web 服务器 1)
sub2.mydomain.com - -> 192.168.1.102(网络服务器 2)
我曾尝试按照此处的说明使用 Apache 的代理模块,但未成功。当我通过浏览器访问 sub1.mydomain.com 时,它总是导致 mydomain.com。
我可以通过这种方法做到这一点吗?如果没有,请告诉我另一种方式。
我使用 Ubuntu 服务器 12.04
[已解决]
解决方案
A记录指向公网IP:
1@public.ip 2www
public.ip
CNAME记录指向子域:
1 sub1 mydomain.com
2 sub2 mydomain.com
添加sub1
和sub2
到/etc/apache2/sites-available
子1:
<VirtualHost *:80>
ServerName sub1.mydomain.com
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
<Location />
ProxyPass http://192.168.1.101/
ProxyPassReverse http://192.168.1.101/
</Location>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
子2:
<VirtualHost *:80>
ServerName sub2.mydomain.com
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
<Location />
ProxyPass http://192.168.1.102/
ProxyPassReverse http://192.168.1.102/
</Location>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
我最近刚刚做了这个。看我的问题。这是一个漫长的来回,但我最终还是把它设置好了。
设置 DNS。A记录将指向您的公共IP。因此,yourdomain.com 指向 your.pub.ip.add。为子域添加 CNAME 记录。因此, sub1.yourdomain.com 指向@
, sub2.yourdomain.com 指向@
,等等。尽管子域都指向同一地址,但浏览器会向网络服务器授予您要访问的子域。
设置阿帕奇。您需要为每个子域(也可能为主域)设置虚拟主机。您可以在不同的位置定义虚拟主机...我的虚拟主机在 中定义/etc/apache2/sites-available
,并包含<Location>
指令,您将在其中设置反向代理。
归档时间: |
|
查看次数: |
14299 次 |
最近记录: |