偷偷在域名上做一个mod_rewrite

时间:2015-06-22 09:14:40

标签: apache .htaccess mod-rewrite redirect dns

我正在努力解决mod_rewrite问题。基本上我需要对域名进行秘密重定向,从

开始
http://domainname.com.someotherstuff.com

http://domainname.com

此规则也应影响所有子目录。

我知道有三个步骤:

  1. 告诉系统路径是否与我们正在寻找的路径匹配
  2. 定义RewriteRule
  3. 将新路径传递给旧路径,以便系统知道(即使它没有显示)两者匹配
  4. 我查了几个帖子和资源(最接近的帖子是thisthis)但是没有一个可以同时解决我的问题 - 重写和保密。

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

    此外,有人可以解释隐藏重定向和301之间的权衡吗?隐藏重定向不是搜索引擎友好的,对吗?

    非常感谢!

1 个答案:

答案 0 :(得分:0)

提及较早的帖子,以澄清rewrite vs redirect

如果您希望客户的浏览器说出http://domainname.com,但是从http://domainname.com.someotherstuff.com获取内容,那么您想要的是重写。您将客户指向http://domainname.com,然后回答前端(服务器/ LB /等...)将“domainname.com”重写为“domainname.com.someotherstuff.com”并将请求发送到将回答该请求的后端服务。在这种情况下,我更喜欢SNAT,因此后端直接响应前端,然后将内容返回给客户,而不是更聪明。

这里有几个活动部件:

  1. domainname.com和domainname.com.someotherstuff.com
  2. 的DNS条目
  3. 前端 - F5是我的最爱,但你可以用任何linux服务器获得类似的结果;需要能够解析domainname.com.someotherstuff.com并具有到后端的网络连接;为http://domainname.com
  4. 的请求提供服务
  5. 后端 - 网络服务器;为来自http://domainname.com.someotherstuff.com
  6. 的前端提供服务