Apache 为假子域修改重写?
我真的尝试了很多方法,但都没有成功。 我需要一个.Htaccess代码来执行以下操作: 我想将此重命名:-> 因此,通过示例而不是称之为: 我会致电:Apache 为假子域修改重写?,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,我真的尝试了很多方法,但都没有成功。 我需要一个.Htaccess代码来执行以下操作: 我想将此重命名:-> 因此,通过示例而不是称之为: 我会致电: 谢谢确保已加载“重写”模块,如 LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so 然后将以下内容添加到.htaccess: RewriteEngine on RewriteCond %{HTTP_HOST} www.mydomain.com RewriteRule
谢谢确保已加载“重写”模块,如
LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so
然后将以下内容添加到.htaccess:
RewriteEngine on
RewriteCond %{HTTP_HOST} www.mydomain.com
RewriteRule ^/([^/]*)(.*) http://$1.mydomain.com$2 [L,R]
Cond将仅与www.mydomain.com匹配。然后,规则将使用$2中包含的第一个“/”将URL拆分为2,并重写和重定向。如下所示:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(?!www\.)([^.]+)\.mydomain\.com$
RewriteRule (.*) http://www.mydomain.com%1$1 [L,R=301]
如果您想要相反的内容,请参阅Roger的评论,而无需重定向用户
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.mydomain\.com$
RewriteRule ^(.+) %{HTTP_HOST}$1 [C]
RewriteRule ^([^.]+)\.mydomain\.com(.*) http://www.mydomain.com/$1$2 [L]
另外,请参见此处:@niry:我相信您的回答与OP的要求相反,但我不能确定,例如,用户输入sub.domain/blah,服务器为domain/sub/blah服务。顺便说一句,反勾号适用于代码,正如您上次的评论中所述。您可能会从中得到更好的答案。