【问题标题】:Why i need to type HTTPS manually to access my site?为什么我需要手动输入 HTTPS 才能访问我的网站?
【发布时间】:2019-04-05 07:16:40
【问题描述】:

为什么每次在浏览器中我都需要在我的网站 URL 前输入 https?虽然我的网站启用了 SSL,但它会转到默认的 IIS 页面。请帮我解决这个问题。

我在浏览器中输入的这个网址——fdrms.visiontek.co.in/

如果我想在每次需要在上述 URL 之前添加 https:// 时查看启用 SSL 的页面,例如 -- https://fdrms.visiontek.co.in/

【问题讨论】:

标签: asp.net iis ssl-certificate


【解决方案1】:

安装 SSL 证书后,您的网站仍可通过常规的不安全 HTTP 连接访问。要连接安全 url,您需要手动输入 https:// 前缀。要在您的网站上强制建立安全连接,您需要设置将 http 重定向到 https 的重定向规则。

您可以按照以下步骤将网站从 http 重定向到 https:

  • 手动或从 Web 平台安装程序下载 Url 重写模块。https://www.iis.net/downloads/microsoft/url-rewrite

  • 打开 IIS 管理器窗口并从连接窗格中选择要应用重定向规则的站点。

  • 功能视图中选择URL重写
  • 在重写模块的操作窗格中单击添加规则
  • 入站部分选择Blank Rule,然后按OK。
  • 输入规则名称。
  • 在“匹配网址”部分:

  • 在“请求的 URL”下拉菜单中选择“匹配模式”

  • 在“使用”下拉菜单中选择“正则表达式”
  • 在“匹配 URL”部分输入以下模式:“(.*)”
  • 选中“忽略大小写”框
  • 在“条件”部分,选择“逻辑分组”下拉菜单下的“全部匹配”,然后在提示窗口中按“添加”:
  • 输入“{HTTPS}”作为条件输入
  • 从下拉菜单中选择“匹配模式”
  • 输入“off”作为模式

- 按“确定” - 在“操作”部分,选择“重定向”作为操作类型,并为“重定向 URL”指定以下内容:https://{HTTP_HOST}{REQUEST_URI} - 选中“附加查询字符串”框。 - 选择重定向类型。 - 单击“操作”菜单右侧的“应用”。

您也可以直接在 web.config 文件中添加此规则,而无需使用上面提到的 UI 模块。

 <configuration>
 <system.webServer>
 <rewrite>
 <rules>
 <rule name="HTTP to HTTPS" enabled="true" stopProcessing="true">
 <match url="(.*)" />
 <conditions>
 <add input="{HTTPS}" pattern="off" />
 </conditions>
 <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" />
 </rule>
 </rules>
 </rewrite>
 </system.webServer>
</configuration>

问候, 贾尔帕。

【讨论】:

    【解决方案2】:

    您看到的行为是您的浏览器的行为。当您键入 www.example.com 时,它会将其转换为 http://www.example.com。在这种情况下,您的 WebServer 的配置方式并不会真正影响您的浏览器的功能。正如其他人所提到的,如果您愿意,您可以让您的 Web 服务器自动将任何对 HTTP 的请求重定向到 HTTPS,从而使用您的 SSL 站点。

    URL 重写是实现此目的的最佳方式,您可以在此处查看规则的外观:https://ruslany.net/2009/04/10-url-rewriting-tips-and-tricks/#redirect-https

    【讨论】:

      猜你喜欢
      • 2010-09-15
      • 2016-02-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-31
      • 2010-11-22
      • 1970-01-01
      相关资源
      最近更新 更多