【发布时间】:2010-01-04 14:48:04
【问题描述】:
我对 httpd 服务器很陌生。我有一个紧迫的问题要解决。我的服务器实例在 centos box 上运行。
如果一个请求到达我的服务器
这应该翻译成
http://domain.com/key/sub-domain
我在我的服务器上配置了许多虚拟主机。但这是一个相当大的案例,我的想法已经不多了
任何建议:我应该怎么做?
【问题讨论】:
标签: url-rewriting apache2
我对 httpd 服务器很陌生。我有一个紧迫的问题要解决。我的服务器实例在 centos box 上运行。
如果一个请求到达我的服务器
这应该翻译成
http://domain.com/key/sub-domain
我在我的服务器上配置了许多虚拟主机。但这是一个相当大的案例,我的想法已经不多了
任何建议:我应该怎么做?
【问题讨论】:
标签: url-rewriting apache2
如果你使用 apache
ServerName sub-domain.domain.com
RedirectMatch /(.*) http://domain.com/key/sub-domain/$1
因此
http://sub-domain.domain.com/a-page-i-want-to-see.html
将发送 301 重定向到
http://domain.com/key/sub-domain/a-page-i-want-to-see.html
如果需要动态检测子域,可能需要一些额外的设置。
RewriteCond %{HTTP_HOST} 是您需要的,但我不确定它的具体工作原理,您可能需要使用。
我确实找到了所有子域的通配符 serverAlais。
ServerName domain.com
ServerAlias *.example.com
RewriteCond %{HTTP_HOST} ...
【讨论】:
RedirectMatch 默认发送 302。