我使用mod_vhost_alias是因为我很容易添加新的vhost (我只需要创建一个目录)。
/etc/apache2/mods-available/vhost_alias.conf
UseCanonicalName Off
VirtualDocumentRoot /var/www/%0/htdocs/etc/apache2/sites-available/default
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>但是,我需要配置一个自定义vhost来使用mod_proxy,因此我创建了:
/etc/apache2/sites-available/mysite
<VirtualHost *>
ServerName mysite.example.com
ProxyPreserveHost On
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://192.168.1.12:7235/
ProxyPassReverse / http://192.168.1.12:7235/
<Location />
Order allow,deny
Allow from all
</Location>
</VirtualHost>当vhost_alias配置正常工作时,当我试图请求my.example.com时,我得到了一个404 (因为主机名目录不存在),而且我的站点是正确启用的。
有什么想法吗?
发布于 2012-03-15 01:54:32
将VirtualDocumentRoot /var/www/%0/htdocs指令移出/etc/apache2/mods-available/vhost_alias.conf,进入/etc/apache2/sites-available/default中的<VirtualHost>块;您不希望它应用于所有东西。
还-从以下位置更改/etc/apache2/sites-available/mysite中的vhost定义:
<VirtualHost *>至:
<VirtualHost *:80>。。并确保在某个地方有一个NameVirtualHost *:80指令(ports.conf?),以便第二个vhost实际接收请求。
https://serverfault.com/questions/369827
复制相似问题