我有一个Angular 2应用程序,我只想在https上运行。 重定向使用http的地址改为使用https的最佳方法是什么?
答案 0 :(得分:4)
我在Angular2网站上添加了一个web.config,其中包含以下内容。请记住,这适用于IIS托管的应用程序。 现在所有地址都重定向到https版本。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<clear />
<rule name="Redirect to https" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" appendQueryString="false" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
答案 1 :(得分:0)
根据您的问题,您必须从服务器端为您的域强制执行https。正如你在评论中提到的IIS,你可以通过一些方法来实现强制HTTps。
答案 2 :(得分:0)
我必须根据web api在同一区域内的位置编写web api服务的例外规则:/
注意这一行
<add input="{REQUEST_URI}" pattern="^/(C2NGService)" negate="true" />
用于角度5的web.config
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Angular Routes" enabled="true" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_URI}" pattern="^/(C2NGService)" negate="true" />
</conditions>
<action type="Rewrite" url="/" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>