缘起

1、从事互联网十来年了,一直想把自己的从事开发过程遇到的问题给写出来,分享给大家。可是可是这只是个种想法,想想之后就放下了,写出来的类文章是少之又少。古人说无志之人常立志,有志之人立长志。今天,就从学习小程序开始,记录在学习过程中的遇到点点滴滴,先做“无志之人常立志”吧。

强调的是,微信小程序开发,我也是从0到1的过程,肯定会有错误或遗漏,还望给指导指导,让我的学习知识更完善,再此先谢过了。

2、bitcms开源内容管理系统也发布了,运营对一个程序老猿来说,确实是个艰巨的任务。自己的想法很多,园子里的朋友也给了不少建议。

总结下来有二:一是bitcms内容管理系统不能是一个孤岛,要有围绕bitcms周边要有相应的应用。像短信接口,公众号接口,支付接口等。这些都是平常工作开发中常用到的,现在只需时间来整理优化后放出来;二是要推广。某度、某3、某条等付费推广,对屌丝作者我来说,想想都是奢饰。那只剩下一条路了,自己写应用技术软文,来慢慢浇灌吧。本小程序学习系列学习笔记,应该也算是一个吧。

下面来进入正题:IIS下SSL环境搭建

刚接触小程序的时候发现后台服务必须是https的时候。心想,腾讯这是要干吗,这是要增加接入门槛吗?随后对https的深入了解,慢慢发现腾讯的苦衷,互联网的安全,并不是只是程序员要考虑的,安全要从基础运行环境的开始。

一、SSL证书申请

提供SSL证书申请服务的有很多,大部分云服务提供商基本上都可以,价格也是从千到万应有尽有。作为屌丝,咱们肯定不是他们的菜。还好,有免费DV可以0元申请。对于安全要求不高,只是接入https的完全可以满足使用。对不差钱或对数据安全要求高的,推荐申请收费SSL证书。如有土豪愿意给我提供收费版SSL证书,请联系我,先谢过了。

下面是景安申请免费DV SSL证书的截图。申请填写域名信息并验证通过后,就可以下载证书了。下载证书后有个生成的个证书密码一个记下。证书导入IIS的时候需要使用这个密码。

1、申请证书

2、绑定域名

3、下载证书

下载的证书,景安的证书还是比较全的,apache,iis等都有,readme.txt是证书密码文本,放入一个压缩包内,避免丢失。

二、安装证书

服务器环境是:windows server 2008 r2 + IIS7

1、安装证书,打开IIS,如下图。找到服务器证书,打开

2、导入证书,选择证书包里的iIS下证书文件,输入下载证书时的证书密码,请可以确定提交了。证书安装完成。

3、网站设置,添加网站或已有网站添加新绑定。绑定类型选择https,SSl证书选择刚才安装的证书,提交搞定。刚开始添加https绑定的时候,挺纳闷为什么主机名不让填写。后来果资料得知:原来IIS7一个服务器只允许一个https绑定。像bitcms.net主域名绑定https,不受影响。如果https绑定的是一个二级域名,只有修改IIS配置文件了

用记事本打开文件:C:\Windows\system32\inetsrv\config\applicationHost.config 注:如果系统盘不在C盘,请参照修改路径

找到

 <site name="bitcms.net" id="4" serverAutoStart="true">
<application path="/" applicationPool="bitcms.net">
<virtualDirectory path="/" physicalPath="D:\www\bitcms.net" />
</application>
<bindings>
<binding protocol="https" bindingInformation="*:443:" />
</bindings>
</site>

修改为

 <site name="bitcms.net" id="4" serverAutoStart="true">
<application path="/" applicationPool="bitcms.net">
<virtualDirectory path="/" physicalPath="D:\www\bitcms.net" />
</application>
<bindings>
<binding protocol="https" bindingInformation="*:443:bitcms.net" />
</bindings>
</site>

4、网站SSL设置,打开SSL设置

勾选要求SSL,客户证书,勾选接受。

三、301跳转设置

经过上面证书安装和网站设置,SSL网站基本上算是已经布置完成了。但是有一点不完美的地方,就是你在浏览器地址栏里输入域名如:bitcms.net,还是打不开网站,必须加上https://,这体验太不好了吧。那再设置一个301跳转,就完美了。下面就开始设置301跳转。如果您的证书使用的是二级域名,301跳转就不用设置了。

新建一个网站,物理路径最好单独设置一个文件夹。 添加普通http绑定,如下图绑定bitcms.net和www.bitcms.net两个域名。

打开HTTP重定向,设置如下图。将请求重写向到此目标填写:https//bitcms.net$S$Q,是域名后加$S$Q。重定向行为勾选第一个,状态代码选择永久(301)。

四、后记

至此,IIS环境下安装SSL证书已经完成。下面说说我在设置过程中遇到的坑。

1、网站SSL设置的时候客户证书,想当然的选择”必须“的啊,结果网站打开,浪费了很多时间在上面。

2、设置301重定向的坑。大家也看这个服务器上的另一个网站也设置了301,请把两个301物理路径些向一个地址,结果填写重定向些目标的时候,修改一个,另一个也跟着变。这应该是IIS BUG吧。

3、还有一个坑是,网上很多教程是从Internet属性->内容->证书里添加SSL证书,这个在IIS7中是不行的。

跟我一起,利用bitcms内容管理系统从0到1学习小程序开发:一、IIS下SSL环境搭建的更多相关文章

  1. 新能力 | 云开发CMS内容管理系统,5分钟搞定小程序管理后台

    小程序·云开发的云调用能力,让用户可以免鉴权快速调用微信的开放能力,极大节约了开发成本.现在,大家期待已久的云开发 CMS 内容管理系统,终于上线啦!顺便提示,接下来还可以二次开发哦! 云开发 CMS ...

  2. bitcms内容管理系统 3.1版源码发布

    开源bitcms内容管理系统采用ASP.NET MVC5+MySql的组合开发,更适应中小型系统低成本运行. bitcms的主要功能 1.重写了APS.NET MVC的路由机制.bitcms使用路由参 ...

  3. Visual Studio 2017中使用正则修改部分内容 如何使用ILAsm与ILDasm修改.Net exe(dll)文件 C#学习-图解教程(1):格式化数字字符串 小程序开发之图片转Base64(C#、.Net) jquery遍历table为每一个单元格取值及赋值 。net加密解密相关方法 .net关于坐标之间一些简单操作

    Visual Studio 2017中使用正则修改部分内容   最近在项目中想实现一个小工具,需要根据类的属性<summary>的内容加上相应的[Description]特性,需要实现的效 ...

  4. [web开发] 利用微信小程序开发上海大学失物招领平台

    我从开始学微信小程序到最后完全写完这个小程序耗时四天,可以说开发难度非常之低,门槛也非常低,之前从来没接触过微信小程序,重新写下开发记录. 先放图: 1.前端开发 前端我用到了iview的ui框架,因 ...

  5. 2-微信小程序开发(开发界面说明,按钮点击切换显示内容)

    说一个功能,大家在用微信实现控制设备的时候,是不是都在为绑定设备发愁. 我看了很多厂家的微信控制,大部分都只是可以用微信给设备配网,但是没有做用微信绑定的. 一般做绑定都是用设备的MAC地址. 这里我 ...

  6. 小程序开发 解析内容中unicode转中文编码显示问题

    如果对你有帮助的话麻烦点个[推荐]~最好还可以follow一下我的GitHub~感谢观看! 小程序后台返回数据的时候,html内容是经过unicode编码的不能直接显示,里边全是类似&#xxx ...

  7. 小程序开发中,纯css实现内容收起折叠功能

    不多说,直接上代码: wxml页面: <!--收起折叠 begin--> <view style='width:100%;background:#fff;border-top:1px ...

  8. bitcms-比特内容管理系统 3.1版源码发布

    bitcms比特内容管理系统,经过几个版本的更新和客户的使用已经基本上完善了.下面主要介绍下他的运行环境和功能. 一.运行环境:windows server+IIS bitcms采用Entity Fr ...

  9. 利用WordPress REST API 开发微信小程序从入门到放弃

    自从我发布并开源WordPress版微信小程序以来,很多WordPress网站的站长问有关程序开发的问题,其实在文章:<用微信小程序连接WordPress网站>讲述过一些基本的要点,不过仍 ...

随机推荐

  1. 独家分析:安卓“Janus”漏洞的产生原理及利用过程

    近日,Google在12月发布的安卓系统安全公告中披露了一个名为"Janus"安卓漏洞(漏洞编号:CVE-2017-13156).该漏洞可以让攻击者绕过安卓系统的signature ...

  2. Python冒号的解释

    1. "没什么首次没有为第二个,跳了三个".它得到的切片序列的每一个第三个项目. 扩展片是你想要的.新在Python 2.3 2. Python的序列切片地址可以写成[开始:结束: ...

  3. UWP Flyout浮动控件

    看见没,点击"Options"按钮,浮动出来一个界面,这个界面可以用xaml自定义. 如果要点击的控件又Flyout属性那么,可以直接按照下面用 <Button Conten ...

  4. 简陋的斗地主,js实现

    最近闲了两天没事做,用js写了个斗地主,练习练习.代码和功能都很简陋,还有bug,咋只是聊聊自己的思路. 这里说说斗地主主要包含的功能:洗牌,发牌,玩家出牌.电脑出牌,出牌规则的验证,输赢啥的没有判断 ...

  5. C# Winform 实现Ajax效果自定义按钮

    技术看点 WinForm自定义控件的使用 自定义控件gif动画的播放 需求及效果 又来一波 C# GDI自定义控件show .这个控件已经使用几年了,最近找出来重构一下.原来是没有边框的,那么导致导航 ...

  6. 一个看起来不像中年人的中年人,带着两个初出茅庐的小伙子儿,用git管理项目代码的进击之路

    一个中年人的孤独前行 我们这一代人,是上个世纪的人,活在当下,已然成为社会上的中流砥柱. 80年代生人,遥望我们的父辈,均是5.60年代的人,迟迟暮年,夕夕老矣.而我们,正当年,却又时光飞逝,很快便要 ...

  7. Ubuntu下安装Anaconda和tensorflow

    官方指南:https://github.com/tensorflow/tensorflow/blob/master/tensorflow/docs_src/install/install_linux. ...

  8. 编码中的setCharacterEncoding 理解<转自-fancychendong>

    1.pageEncoding="UTF-8"的作用是设置JSP编译成Servlet时使用的编码. 2.contentType="text/html;charset=UTF ...

  9. CSS3实现的一批hover特效

    本特效的原版是codepen上面的hover.css项目.个人非常喜欢所以把全部的hover特效自己也写了一遍,上传文件麻烦所以直接把css整合到HTML代码中了.代码复制下来保存后就可以用浏览器打开 ...

  10. 五、Spring Boot 事务

    spring Boot 使用事务非常简单,首先使用注解 @EnableTransactionManagement 开启事务支持后,然后在访问数据库的Service方法上添加注解 @Transactio ...