【发布时间】:2011-06-02 06:29:22
【问题描述】:
例如,我有mysite.com 和beta.mysite.com。两者都使用virtualHost 指令指向同一个索引文件。我将在 apache conf 中做什么,以便当我访问 $_SERVER['SERVER_NAME'] 时,值仍然是 mysite.com?
这应该是灵活的,只有 beta 会被删除。
【问题讨论】:
例如,我有mysite.com 和beta.mysite.com。两者都使用virtualHost 指令指向同一个索引文件。我将在 apache conf 中做什么,以便当我访问 $_SERVER['SERVER_NAME'] 时,值仍然是 mysite.com?
这应该是灵活的,只有 beta 会被删除。
【问题讨论】:
也许您可以在 VirtualHost 指令中使用 ServerAlias,并且只使用一个 VirtualHost 指令:
<VirtualHost *:80>
ServerName mysite.com
ServerAlias beta.mysite.com
...
</VirtualHost>
【讨论】:
http://httpd.apache.org/docs/2.2/mod/core.html#usecanonicalname
试试这个:
<VirtualHost *:80>
ServerName mysite.com
ServerAlias beta.mysite.com
UseCanonicalName On
</VirtualHost>
我假设您有 1 个 VH,而不是:每个站点 1 个(因为它们是同一个站点)。
之后重启apache。
【讨论】: