网站要使用https需要如下几个步骤

1、申请https证书,现在已经有很多免费的https证书申请了

2、服务器中安装证书

3、网站的连接全部改为https连接

Asp.Net Mvc网站中整站改为Https连接可以使用以下两种方法

修改Global.asax.cs

在 Global.asax.cs 添加如下代码

#if !DEBUG
GlobalFilters.Filters.Add(new RequireHttpsAttribute());
#endif

这是配置了ASP.NET的程序,可以处理所有的经过ASP.NET处理的请求;但是对于存放在Web服务器上的其他资源文件(即不经过ASP.NET的程序的处理)无效。
如果有此需求,应该告知IIS服务器不要私自回复用户请求,要求所有请求都必须由ASP.NET程序执行。
此时,在Web.config下增加下面的内容,注意是根目录的Web.config而不是Views文件夹的Web.config

<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
<system.webServer>

修改Web.config部署全站HTTPS

插一句题外话,下个版本的ASP.NET据说要取消掉Web.config。
在IIS 7.0+的版本上,可以使用URL Rename来完成。Url Rename是指当IIS接收到某个请求后,先根据设定的规则进行更改请求地址后,在发送给网站程序。经测试本方法在Azure App Service (原名 Azure Websites)是可以使用的。
在Web.config的configuration节点下,找到或添加system.webServer节点,并在此节点下添加:

    <rewrite>
<rules>
<!-- clear 会清除掉已有的rule,如果添加过别的rule,请注意确认-->
<clear/>
<rule name="Force HTTPS" enabled="true">
<match url="(.*)" ignoreCase="false" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" appendQueryString="true" redirectType="Permanent" />
</rule>
</rules>
</rewrite>

仅修改Release的Web.config

这样就算轻松搞定了,但是在开发时,我们不希望要求HTTPS,这时可以通过只修改Release的Web.config来解决。
首先,不要修改Web.config,而是找到Web.Release.config(VS点开Web.config的小箭头)。
configuration节点下添加如下内容:

  <system.webServer>
<rewrite xdt:Transform="Insert">
<rules>
<!-- clear 会清除掉已有的rule,如果添加过别的rule,请注意确认-->
<clear/>
<rule name="Force HTTPS" enabled="true">
<match url="(.*)" ignoreCase="false" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" appendQueryString="true" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>

这个如刚才的区别仅仅在于<rewrite xdt:Transform="Insert">,关于如何整合这些内容,请参阅用于 Web 应用程序项目部署的 Web.config 转换语法

转载自:https://www.cnblogs.com/qin-nz/p/4591687.html

最新文章

  1. PHP求职宝典系列——PHP Web 编程篇
  2. 已知当前地理位置经纬度查询几个点中最近的一个地点demo
  3. Json解析实例
  4. .Net Core 1.0.0正式版安装及示例教程
  5. BZOJ-1975 魔法猪学院 K短路 (A*+SPFA)
  6. socket编程(Linux)
  7. 我又回来了,这回是带着C++来的
  8. ASP缓存类收集
  9. bzoj 1045: [HAOI2008] 糖果传递 贪心
  10. AndroidStudyDemo之Android4.x介绍
  11. centos6.6安装mysql5.7.6(采用MySQL Yum Repository)—(先看最后一行)
  12. ICE-3.5.1-错误记录
  13. PKU POJ 1006 Biorhythms (中国剩余定理)
  14. applicationContext.xml 配置(扫描)
  15. hdoj 1257 DP||贪心
  16. 【新版】Android技术博客精华汇总
  17. 爬虫框架Scrapy 之(一) --- scrapy初识
  18. 使用NOPI写入Excel基础代码
  19. JSP页面静态包含和动态包含的区别与联系
  20. java开发支付宝支付详细流程_demo的运行

热门文章

  1. Linux下不借助工具实现远程linux服务器上传下载文件
  2. 高性能计算 —— 中国金融服务业创新发展的助推剂 &amp; 微软
  3. 产品经理 写SQL
  4. github资源汇总
  5. ROS学习笔记(一)
  6. Web.Config中配置字符串含引号的处理
  7. 函数和宏实现打印的增强myprintf
  8. JFreechart从入门到放弃
  9. spring 使用@Bean装配Bean
  10. lombok插件/slf4j中字符串格式化