Apache 在同一个域上托管两个站点

Apache 在同一个域上托管两个站点

我想在同一个域名上托管两个不同的网站,例如:

<VirtualHost *:80>
    DocumentRoot /var/www/www1/
    ServerName my.domain.com
    ...
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot /var/www/www2/
    ServerName my.domain.com/www2
    ...
</VirtualHost>

这个配置当然是错误的,但它描述了我想要做的事情。当有人访问 my.domain.com 时,他将由 /var/www/www1 中的 Web 应用程序提供服务。当有人访问 my.domain.com/www2 时,他将由 /var/www/www2 中的 Web 应用程序提供服务。这在 Apache 中可行吗?

答案1

您实际上并不是在配置命名虚拟主机或基于 IP 的虚拟主机,因此请忘记第二个VirtualHost条目并在第一个条目中设置别名:

Alias /www2 /var/www/www2

答案2

“my.domain.com/www2”

这不是真正的 FQDN,而是带路径的 FQDN。您不能将其指向域。使用别名。

答案3

我想在同一个域名上托管两个不同的网站,例如:

DocumentRoot /var/www/www1/ 服务器名称 my.domain.com ... DocumentRoot /var/www/www2/ 服务器名称 my.domain.com/www2

“我想吃素食 CW 牛排”这种级别的无意义问题。

基本上,如果您想使用两个域名,那么请使用两个域名。您的示例使用相同的域名,因此标题和文本不匹配。

在同一域名下显示两个不同的内容是行不通的。在一个域名下的不同文件夹中显示不同的上下文是可行的,但这与在两个域名下托管同一个网站不同。

相关内容