0

我使用 apache2,我想拥有类似 username.mydomain.fr 的东西

www.mydomain.fr --> /var/www/web-en-royans 可以正常工作 username.mydomain.fr --> /home/username/www 不能正常工作

另外, www.mydomain.fr/~username --> /home/username/www 工作正常,但我不在乎。

我激活了 user_dir 和 vhost_alias。

UseCanonicalName Off

<VirtualHost *:80>
    ServerName www.web-en-royans.fr
    DocumentRoot /var/www/web-en-royans
</VirtualHost>
<VirtualHost *:80>
    ServerName *.web-en-royans.fr
    VirtualDocumentRoot /home/%-3/www
    #VirtualDocumentRoot /home/%1/www
</VirtualHost>

    <Directory "/var/www/web-en-royans">
        Options Indexes MultiViews FollowSymLinks
        Order deny,allow
        Allow from all
    </Directory>
    <Directory "/home/*/www">
            Options Indexes MultiViews FollowSymLinks
            Order deny,allow
            Allow from all
    </Directory>

    ErrorLog /var/log/apache2/error.web-en-royans.fr.log
    CustomLog /var/log/apache2/access.web-en-royans.fr.log combined

我想使用 VirtualDocumentRoot 而不是 rewrite_url 此外,username.mydomain.fr 转到 www.mydomain.fr,whatever.mydomain.fr 转到 www.mydomain.fr。

我什至不知道如何调试或跟踪它。

4

1 回答 1

0

很简单,只需要禁用mod-userdir,并添加一个ServerAlias

<VirtualHost *:80>
    ServerName www.web-en-royans.fr
    DocumentRoot /var/www/web-en-royans
</VirtualHost>
<VirtualHost *:80>
    ServerName *.web-en-royans.fr
    ServerAlias *.web-en-royans.fr
    VirtualDocumentRoot /home/%1/www
</VirtualHost>
于 2015-02-18T09:30:48.730 回答