我想重写我的URL,这样我就可以到达被客户端视为子域的文件夹。客户端将在URL栏中输入以下内容:
abc.def.com通过URL重写,它将被转到
def.com/abc默默地。请告诉我我该怎么做?
发布于 2011-05-17 14:28:17
您的RewriteRule中只有很少的几处更改就能如此出色地工作
RewriteCond %{HTTP_HOST} ^(?:www\.)?([^\.]+)\.your_domain\.com [NC]
RewriteRule ^(.*)$ /%1/$1 [L]您应该在RewriteRule中使用$。希望这对你有帮助。
发布于 2011-05-17 12:56:59
您应该使用%{HTTP_HOST}而不是%{REMOTE_HOST}。这是因为如果启用了HostnameLookups,则%{REMOTE_HOST}是在%{REMOTE_ADDR}上进行反向DNS查找的结果。
所以你的规则应该是
RewriteCond %{HTTP_HOST} ^(?:www\.)?([^\.]+)\.your_domain\.com [NC]
RewriteRule ^(.*) /%1/$1 [L]发布于 2011-05-17 03:51:48
如果您已经知道子域,您可以:
RewriteCond %{REMOTE_HOST} ^(?:www\.)?subdomain\.your_domain\.com [NC]
RewriteRule ^(.*) /subdomain/$1 [L]如果您希望支持任何可能的子域,请使用:
RewriteCond %{REMOTE_HOST} ^(?:www\.)?([^\.]+)\.your_domain\.com [NC]
RewriteRule ^(.*) /%1/$1 [L]https://stackoverflow.com/questions/6022445
复制相似问题