将域重定向到另一个域,包括文件夹结构(如果可能,使用SSL)



我想将一个域重定向到另一个域,同时保持相同的文件夹和文件请求结构,如下所示:

http://libraries.domain.net/testing/another/blah.php
https://libraries.anotherdomain.com/testing/another/blah.php

暂时忽略SSL部分。

我的第一个问题很简单:

  1. 如何在我的web.config文件(IIS)中实现这一点
  2. 这种类型的重定向称为什么
  3. 出于我自己的兴趣,我如何对.htaccess文件也这样做?你不必回答这个问题,因为我认为这个问题无论如何都有正确的答案,但只是希望得到证实

请注意:如果您只知道问题3的答案,请不要麻烦回答,因为我的主要问题是如何在IIS而不是Apache中做到这一点。

SSL

到目前为止,我忽略了这一部分,因为我不确定是否可以在不收到安全错误的情况下完成。然而,我想知道的是,如何在保持安全连接的同时执行上述重定向?

显然,anotherdomain.com必须具有有效的SSL证书,但domain.com是否也必须具有有效的证书,即使它正在转发所有页面?

拥有两个证书会防止出现任何错误吗?还是会出现一个警告,说You are not going to where you think you are going或类似的东西?

使用DNS这样做会更好吗?SSL能和DNS一起工作吗?

如何在web.config文件(IIS)中实现这一点

请参阅以下内容:

  • http://www.iis.net/downloads/microsoft/url-rewrite
  • http://www.iis.net/learn/extensions/url-rewrite-module/url-rewrite-module-video-walkthrough
  • http://blogs.iis.net/ruslany/archive/2009/04/08/10-url-rewriting-tips-and-tricks.aspx

使用IIS URL重写的示例:

<rule name="Redirect example.net to example.com" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="example.net$" negate="false" />
</conditions>
<action type="Redirect" url="http://www.example.com/{R:1}" redirectType="Permanent" />
</rule>



这种类型的重定向称为什么

我不确定它是否有特定的名称。我只是称之为域重定向或30x重定向。



为了我自己的利益,我如何使用.htaccess文件?你不必回答这个问题,因为我认为这个问题无论如何都有正确的答案,但只是希望得到证实。

  • https://stackoverflow.com/a/3010036/908471
  • http://httpd.apache.org/docs/current/mod/mod_rewrite.html
RewriteEngine on
RewriteCond %{HTTP_HOST} example.net$
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]



拥有两个证书会防止出现任何错误吗?还是会发出警告,说你不会去你认为要去的地方,或者类似的事情

是的,来自可信证书颁发机构的两个有效证书将防止出现错误(只要页面上的所有内容也来自有效的https链接)。如果证书颁发机构提供SubjectAltName支持(也称为SAN或统一通信证书),您也可以只使用一个证书。

如果你有两个有效证书,只有一个IP,你可以做的另一件事是使用SNI,但你需要明白,并不是所有的网络客户端都可以使用SNI——所以要小心。SNI的使用正在增加,我建议这将成为首选方法,因为您不必在更新时处理跟踪SAN/UCC上的域的头痛问题。



用DNS这样做会更好吗?SSL能和DNS一起工作吗

DNS与SSL无关。你不能通过DNS欺骗SSL。

相关内容

  • 没有找到相关文章