如何使用.htaccess重写特定文件上的子域?

如何使用.htaccess重写特定文件上的子域?,.htaccess,subdomain,.htaccess,Subdomain,我对.htaccess有一些经验,并且创建了简单的子域重定向,效果很好。然而,我被一些更复杂的事情困扰了几天,所以我希望能找到一些帮助 我还需要重新写入子域和文件名-我的意思是: 无论何时访问en.example.com/entra页面,我都需要它将url重新写入正确的子域:es.example.com/entra。(区别在于基于语言的子域) 到目前为止,我已经尝试过这个方法,但不起作用: RewriteCond%{HTTP_HOST}^en.example.com/entra[NC] 重写规则

我对.htaccess有一些经验,并且创建了简单的子域重定向,效果很好。然而,我被一些更复杂的事情困扰了几天,所以我希望能找到一些帮助

我还需要重新写入子域和文件名-我的意思是:

无论何时访问en.example.com/entra页面,我都需要它将url重新写入正确的子域:es.example.com/entra。(区别在于基于语言的子域)

到目前为止,我已经尝试过这个方法,但不起作用:

RewriteCond%{HTTP_HOST}^en.example.com/entra[NC]

重写规则(.*)[R=301,L]

有人能给我指出正确的方向吗?

试试这个:

RewriteCond %{HTTP_HOST} ^en.example.com [NC]
RewriteRule ^entrar(.*) http://es.example.com/entrar$1 [R=301,L]

您尝试中的错误是,您将整个URI与
HTTP\u主机
匹配,但是
HTTP\u主机
仅包含子/域,而不包含其后面的部分-这是请求URI。

您好,感谢您的尝试!我试过了,但没用。不过,感谢您对请求uri的解释,这非常有帮助!我想知道我是否可以将我的RewriteCond设置为只作为请求URI。当你说它不工作时,有什么错误?是的,如果您愿意,您可以在
RewriteCond
中匹配
%{REQUEST_URI}
。不幸的是,没有错误来帮助我解决这个问题!我正在为这个网站使用Wordpress,所以当它找不到en.example.com/entra页面时,它会自动将我发送到404/搜索页面。我想.htaccess将是重新编写URL的最佳方式,因为这也是我处理多个域名的方法。。。我想尝试匹配请求URI,我尝试了“RewriteCond%{REQUEST\u URI}(.*)entrar$”,但还没有成功。嗯,可能它干扰了其他一些规则。我对它进行了测试,它似乎工作得很好:)这是一个很棒的工具!我也做了测试,它说条件和规则都满足了。我会继续查找,也许Wordpress加载搜索表单时有问题,也许这会覆盖.htaccess。