我想将域名重定向:http://www.newdomain.com到http://sub.maindomain.com
我已将.htaccess编辑为:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !sub.maindomain.com$ [NC]
RewriteRule ^(.*)$ http://sub.maindomain.com/$1 [L,R=301]
重定向,但地址栏中显示http://sub.maindomain.com。救命!如何进行遮罩以便http://www.newdomain.com可见。感谢
我还要创建一个子网站http://sub.newdomain.com。如何使用.htaccess。
答案 0 :(得分:3)
如果www.newdomain.com
和sub.maindomain.com
位于不同的主机上,那么在浏览器的网址栏显示为sub.maindomain.com
时,只能在www.newdomain.com
上投放内容的唯一方法是代表浏览器从sub.maindomain.com
获取内容。因为就浏览器而言,它正在查看newdomain上的内容。
您可以通过使用apache或脚本设置代理来执行此操作。使用apache,您需要访问www.newdomain.com
域的vhost配置。您可以将其设置为:
ProxyPassMatch ^(.*)$ http://sub.maindomain.com$1
请查看mod_proxy docs以获取有关您可以通过此指令的标志的更多信息,以调整超时和重试。
如果你想设置一个php脚本来代理,你需要将所有请求路由到这个php脚本,所以在你的www.newdomain.com
文档根目录中的htaccess文件中,添加(假设这个php脚本被调用) proxy.php
):
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/proxy.php
RewriteRule ^(.*)$ /proxy.php?url=$1 [L,QSA]
然后在proxy.php
中,查找url
查询字符串,加载该页面,然后将其输出到浏览器。
如果您只是将两个域指向同一主机,所有这些都会更容易。