.htaccess 将domain.com/contact.html重定向到newdomain.com/contact.html

.htaccess 将domain.com/contact.html重定向到newdomain.com/contact.html,.htaccess,redirect,.htaccess,Redirect,我想将一个html页面重定向到另一个域,该页面是一个联系人表单,如www.abc.com/contact.html,但没有www,如xyz.com/contact.html 我有两个相同的数据域(只是域名不同)。xyz.com上的表单工作正常,但是abc.com上的表单不工作,即使两个域上的代码100%相同 只需在.htaccess文件中放入以下行即可 RewriteEngine On RewriteCond %{HTTP_HOST} ^www?.abc.com [NC] RewriteRule

我想将一个html页面重定向到另一个域,该页面是一个联系人表单,如
www.abc.com/contact.html
,但没有www,如
xyz.com/contact.html


我有两个相同的数据域(只是域名不同)。xyz.com上的表单工作正常,但是abc.com上的表单不工作,即使两个域上的代码100%相同

只需在.htaccess文件中放入以下行即可

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www?.abc.com [NC]
RewriteRule ^contact\.html$ http://xyz.com%{REQUEST_URI} [R=301,L]
编辑:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.abc.com [NC]
RewriteRule ^contact\.html$ http://xyz.com%{REQUEST_URI} [R=301,L]

RewriteCond %{HTTP_HOST} ^abc.com [NC]
RewriteRule ^contact\.html$ http://xyz.com%{REQUEST_URI} [R=301,L]

确保服务器配置或vhost中的AllowOverride已设置为启用,以便进行重写。最好这样做,看看一切是否正常“AllowOverride All”我已经在apache httpd.conf中更改了AllowOverride All,并且在重新启动apache Web服务器之后(因为我正在我的另一台计算机(即我的服务器)上托管它)我已经重新加载了网站www.abc.com/contact.html,但它没有被重定向,无法尝试我上面编辑的代码,并确保您清除浏览器缓存和历史记录。另外,如果可能的话,您可以将您的httpd.conf完整部分粘贴到您放置AllowOverride All的位置吗?这里是AllowOverride All的httpd.conf部分;DocumentRoot“D:/WWW”选项如下Symlinks allow Override All Order deny,allow deny from All Options Index以下Symlinks allow Override All Order allow,All Options All Order allow,deny allow from All allow Override All Order allow,deny allow from All allow Override All Order allow,Deny Deny from all Confect正如您所说,我已经尝试过了,清除了浏览器缓存和历史记录,但它没有被重定向!