设置 Apache2 根据 URL 路径为同一域上的多个目录提供服务

设置 Apache2 根据 URL 路径为同一域上的多个目录提供服务

我想使用 Ubuntu Linux 上的 Apache2 在同一个 IP、同一个服务器和同一个域上托管两个不同的网站。假设我有以下目录,它们代表将提供内容的网站:

/srv/www/blog/          #for the blog
/srv/www/mainsite/      #for the main site

我想要设置 Apache2,以便应用以下内容:

  1. 当用户访问时,http://mysite.com/他们会获得来自 的内容/srv/www/mainsite/
  2. 当用户访问时http://mysite.com/blog,他们会获得来自 的内容/srv/www/blog/

我原本以为我会设置多个虚拟主机,但似乎只适用于不同的域和/或 IP。我需要在 apache2 配置中做什么才能实现上述功能?

答案1

在你的<VirtualHost>

DocumentRoot /srv/www/mainsite
<Directory /srv/www/mainsite>
    Order Allow,Deny
    Allow from all
</Directory>

Alias /blog /srv/www/blog
<Directory /srv/www/blog>
    Order Allow,Deny
    Allow from all
</Directory>

如果您已经有一个覆盖的目录块,请忽略它/srv/www- 我只是把它们放进去以清楚地表明您需要 Apache 的访问控制来允许访问两者。

相关内容