如何在不更改地址栏中的 URL 的情况下重定向到不同的域?

问题描述 投票:0回答:7

我想重定向自:

domain1.com/photos

致:

domain2.com/photos

我希望地址栏中的 URL 仍显示为:

domain1.com/photos

有没有办法仅使用 .htaccess 来做到这一点?


注:

我的domain1.com .htaccess 文件目前完全空白。

.htaccess
7个回答
9
投票

不,没有办法用 .htaccess 来做到这一点。这样做会带来明显的安全漏洞 - 想象一下有人在银行网站上这样做!


3
投票

如果两者托管在同一服务器上,请在 .htaccess 中执行此操作:

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{HTTP_HOST} ^domain1.com$
  RewriteRule (.*)$ http://www.domain2.com$1 [P]
</IfModule>

1
投票

您可以在

<iframe>
中打开
domain1.com/photos
,显示
domain2.com/photos
的内容。但是,即使您转到
domain1.com/photos
中的不同页面,URL 也永远不会从
domain2.com
改变。

你想做什么?听起来很粗略。您拥有这两个域名吗?为什么要在另一个地址复制一个网站的内容?


0
投票

如果您同时拥有domain1和domain2,您可以通过域名转发来完成此操作。检查您的域名注册商(如 godaddy.com)的选项。

不,你不能通过htaccess文件来做到这一点。


0
投票

为什么这是不可能的?只要您的 Apache 安装了

mod_proxy
,这似乎是一项合理的任务:

ProxyPass /photos http://domain2.com/photos/

http://httpd.apache.org/docs/2.0/mod/mod_proxy.html#proxypass


0
投票

解决这个问题的方法是,如果domain.com/photos 上的页面是服务器端脚本,则执行 HTTP 调用并提供响应。

在 ColdFusion 中:

<cfhttp url="another.domain.com/photos">

<cfoutput>#CFHTTP.FileContent#</cfoutput>

它们将是一个额外的请求,但它会给你你想要的输出。


-2
投票

使用 htaccess 文件是不可能的。

© www.soinside.com 2019 - 2024. All rights reserved.