如何在Apache2上拥有不同的网站子目录?

时间:2012-12-02 08:48:17

标签: configuration apache2 virtualhost subdirectory

我有一台Apache2服务器,配置为提供位于不同文件夹中的网站,如下所示:

  • /var/www/main包含主页文件index.html
  • /var/www/sub包含另一个文件sub.html

虽然我的网站主页可以访问,但子部分不是:

  • www.mysite.com(== www.mysite.com/index.html)有效
  • ẁww.mysite.com/sub 工作
  • ẁww.mysite.com/sub.html 工作
  • ẁww.mysite.com/sub/sub.html 工作

错误消息始终为requested URL ... was not found on this server

/etc/apache2/sites-available/sub

<VirtualHost *:80>
    ServerName www.mysite.com
    DocumentRoot /var/www/sub
    <Directory /var/www/sub>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>

/etc/apache2/httpd.conf

<VirtualHost *:80>
    DocumentRoot /var/www/main
    <Directory /var/www/main>
        AllowOverride all
        Options -MultiViews
    </Directory>
</VirtualHost>

我的配置有什么问题?

1 个答案:

答案 0 :(得分:0)

需要和像

一样
<VirtualHost *:80>
    ServerName www.mysite.com
    DocumentRoot /var/www/main
    Alias  /sub /var/www/sub
    <Directory /var/www/main>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>
    <Directory /var/www/sub>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

</VirtualHost>

然后http://mysite.com/sub/sub.html将成为子文件。 http://mysite.com/index.htmlhttp://mysite.com也应该有用。

如果不需要子目录,则需要查看ReWrite