我在httpd.conf中设置了VirtualHost,如下所示:
<VirtualHost xxx.255.118.79:80>
ServerAdmin hoge@hoge.foo.com
DocumentRoot /var/www/html
ServerName main.foo.com
ErrorLog logs/main.foo.com-error_log
TransferLog logs/main.foo.com-access_log
</VirtualHost>
<VirtualHost xxx.255.118.79:8080>
ServerAdmin hoge@hoge.foo.com
DocumentRoot /opt/another_www/
ServerName anotherhost.foo.com
ErrorLog logs/host.foo.com-error_log
TransferLog logs/host.foo.com-access_log
</VirtualHost>
使用httpd -S看起来还行。
[iron@birdwatch html]$ sudo httpd -S
VirtualHost configuration:
xxx.255.118.79:80 main.foo.com (/etc/httpd/conf/httpd.conf:1012)
xxx.255.118.79:8080 anotherhost.foo.com (/etc/httpd/conf/httpd.conf:1020)
Syntax OK
但是当我访问http://xxx.255.118.79:8080时,它仍然可以访问/ var / www / html。 你能否告诉我如何为8080端口提供apache2服务/ opt / another_www?
谢谢!
答案 0 :(得分:2)
我意识到运行Apache的本地机器必须能够发现域名。 这意味着它必须是本地IP地址或*。
<VirtualHost *:8080>
ServerAdmin hoge@hoge.foo.com
DocumentRoot /opt/another_www/
将其更改为*后,它开始在/ opt / another / www下提供文档。