如何在Apache重写规则中替换域名?
我需要在重写规则中将URL domain.com重定向到domain.net。我最初使用重定向,但它丢失了我发送的POST变量。重写是否会延续这些问题?最好的方法是什么?这应该可以解决您的问题:如何在Apache重写规则中替换域名?,apache,.htaccess,Apache,.htaccess,我需要在重写规则中将URL domain.com重定向到domain.net。我最初使用重定向,但它丢失了我发送的POST变量。重写是否会延续这些问题?最好的方法是什么?这应该可以解决您的问题: RewriteEngine on RewriteCond %{HTTP_HOST} ^www.domain.com$ [OR] RewriteCond %{HTTP_HOST} ^domain.com$ RewriteRule ^(.*)$ http://www.thenewdomain.net/$1
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.domain.com$ [OR]
RewriteCond %{HTTP_HOST} ^domain.com$
RewriteRule ^(.*)$ http://www.thenewdomain.net/$1 [R=301,L]
我不认为重写mod可以做这样的事情!当我使用它时,我在重定向的URL中得到两个斜杠。比如
…newdomain.net//login
。因为$1
是/login
,新域的末尾也有一个斜杠。我必须使用RewriteRule^/(.*)$http://www.thenewdomain.net/$1[R=301,L]
从$1
或重写规则^(.*)$http://www.thenewdomain.net$1[R=301,L]
。第一个看起来更好,但第二个我想是更容易失败。一个小的,但重要的细节。这将不起作用:RewriteCond%{HTTP\u HOST}^www.domain.com$[或]
。您需要添加一个空格:RewriteCond%{HTTP\u HOST}^www.domain.com$[或]