我按照这里的说明在子域名上安装了 redmine >http://library.linode.com/web-applications/project-management/redmine/ubuntu-10.04-lucid 它实际上还没有起作用,但是这是另一个故事。
我主要担心的是,任何时候我访问anything.domain.com,我都会被引导到同一个地方(redmine/nginx)。
让我感到困惑的是,如果我有一个用 virtualmin 运行/创建的子域,那么它可以正常工作。看起来端口 8080 是一个总括,而我更喜欢端口 80 上的 apache 是一个总括,这样它可以说“你没有权限”。
这是我的虚拟主机(我也使用 localhost:8080 而不是域名,似乎没有什么区别。
<VirtualHost 50.116.11.1:80>
ServerAdmin [email protected]
ServerName proj.domain.com
ProxyPass / http://proj.domain.com:8080/
ProxyPassReverse / http://proj.domain.com:8080/
# Uncomment the line below if your site uses SSL.
SSLProxyEngine On
</VirtualHost>
也许我找错了地方?谢谢!
答案1
不确定哪个更好,两者似乎都有效,尽管根据这里还有另一个答案,这是正确的方法
<VirtualHost 111.11.1.1:80>
ServerName sub.domain.net (one i want nginx on)
ProxyRequests Off
<Proxy *>
Order deny,allow
allow from all
</Proxy>
ProxyPreserveHost On
ProxyPass / http://domain.net:8080 (all other, i want apache on everything except sub)
ProxyPassReverse / http://domain.net:8080
ProxyErrorOverride Off
ErrorDocument 404 /notavail.html
</VirtualHost>
答案2
正确,谢谢亚历克斯。
我将代理端口改为 80
所以现在我在 /etc/apache2/sites-available/sub.domain.net 中有这个,除了指定域之外的所有内容都转到端口 80
<VirtualHost 50.111.11.1:8080>
ServerAdmin [email protected]
ServerName sub.domain.net
ProxyPass / http://localhost:80/
ProxyPassReverse / http://localhost:80/
# Uncomment the line below if your site uses SSL.
# SSLProxyEngine On
</VirtualHost>