一、HTTPS的summery,综述,它的基本原理,扫肓。

http://www.codeceo.com/article/https-knowledge.html

读过后,就明白https怎么加密的,为什么会保证网络传输的私密性。

二、自己生成私钥、证书,然后应用到apache中。

讲解了如何在windows PHPStudy Apache 配置支持HTTPS

http://www.cnblogs.com/best-jobs/p/3298258.html

简单明了地教你怎么生成证书,并教你在apache上使用它(生成证书分windows和linux,而使用不分)
 
教你怎么自己生成证书,并在windows上的apache使用它
 
以上3篇文章方法很类似,而且第一篇文章更详细,把可能出错的原因也说了。
 
 
这篇教你怎么生成证书,随便看一看。
 
总体来说,流程就是:
先获得私钥+证书两个文件(可以自己生成、可以从CA购买),放到apache的某个目录;
再配置httpd.conf和httpd-ssl.conf两个文件,让apache知道你要开启SSL验证,并指明私钥和证书的位置;
重启apache即可。
 
三、我没有自己生成证书,因为phpstudy环境里已经带有证书和私钥。
而且自己生成的证书,会被浏览器报警。不能真正用,只能用来加密,自己玩玩可以。
而且买个证书也不贵,300多一年或者免费。商用必买。
 
所以,下面只说有了证书(.crt文件)和私钥(.key文件)以后,我们怎么配到apache里使用。
 
 
四、对apache的配置
1、假设server.crt和server.key两个文件,已经放到E:\phpStudy\Apache\conf\ssl 下(放到哪里都可以,因为这个位置要写到httpd-ssl.conf中。)
 
2、修改E:\phpStudy\Apache\conf\extra\httpd-ssl.conf文件,下面只列出要修改的内容
DocumentRoot "D:\allprojects\ttcms\waxs"(这里一定要写绝对路径,比如你写成DocumentRoot "/Apache24/htdocs",它会解释为E:/Apache24/htdocs)
ServerName www.waxstest.com  //这里配啥,不重要,因为不管你配啥,任何域名都会起作用。好像没有起到绑定域名的作用。
ErrorLog "E:\phpStudy\Apache\logs\error.log"
TransferLog "E:\phpStudy\Apache\logs\access.log"
SSLCertificateFile "E:\phpStudy\Apache\conf\ssl\server.crt"  //这里就是实际证书的位置
SSLCertificateKeyFile "E:\phpStudy\Apache\conf\ssl\server.key"  //这时就是实际私钥的位置。
CustomLog "E:\phpStudy\Apache\logs\ssl_request.log" \
 
3、修改E:\phpStudy\Apache\conf\httpd.conf,打开两行:
LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf
确保这两个文件存在 
 
4、重启apache。如果用phpstudy这种集成环境重启不成功,只能到dos命令行,运行E:\phpStudy\Apache\bin>httpd
看报错,一步一步解决。
比如

就是从这里看出要写绝对路径的。

最终重启apache成功。

5、浏览器访问用https即可

 

6、最后说两句

最难的是对httpd-ssl.conf的配置,

其中这两行

DocumentRoot "D:\allprojects\ttcms\waxs"
ServerName www.waxstest.com 
我以为跟配置虚拟机vhosts.conf差不多,在vhosts.conf中比如

<VirtualHost *:80>
DocumentRoot "D:\allprojects\ttcms\qinke"
ServerName www.qinketest.com
ServerAlias
<Directory "D:\allprojects\ttcms\qinke">
Options FollowSymLinks ExecCGI
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
</VirtualHost>

其中ServerName的改变,可以绑定特定的域名指向特定的目录。

而在httpd-ssl.conf中,ServerName似乎不起作用,

但DocumentRoot 跟vhosts.conf一样起作用。有待研究。

而且https不会影响已经存在的http站点。(也就是https的DocumentRoot 和http的某个DocumentRoot 一样,那么https和http都可以访问)

 

Apache配置HTTPS的过程小记的更多相关文章

  1. Apache配置https

    Apache配置https 之前一直用的是Tomcat,今天突然接到任务要给Apache配置https证书,因为小程序要用.下面把过程列出来以备后续查看. 1.首先你得有ssl证书,没有的可以去购买, ...

  2. Apache配置HTTPS功能

    apache配置https 一.yum 安装openssl和openssl-devel,httpd-devel 二.生成证书(也可以从公司的证书颁发机构获取): #建立服务器密钥 openssl ge ...

  3. Windows上为Apache配置HTTPS

    Windows上为Apache配置HTTPS   转 https://www.cnblogs.com/tianzijiaozi/p/7582671.html   1. 安装OpenSSL: Windo ...

  4. Linux下Apache配置HTTPS功能

    Apache配置HTTPS功能  转 https://www.cnblogs.com/liaojiafa/p/6028816.html 一.yum 安装openssl和openssl-devel,ht ...

  5. apache 配置https(转)

    主要讲述在windows下apache配置SSL以实现http转换为https SSL: SSl是为Http传输提供安全的协议,通过证书认证来确保客户端和网站服务器之间的数据是安全.也就是说在SSL下 ...

  6. apache配置https协议

    安装openssl有两种方式,第一种直接下载安装包,装上就可运行:第二种可以自己下载源码,自己编译.下面对两种方式均进行详细描述. 一.下载和安装openss 方法一:直接使用openssl安装包 W ...

  7. 在linux下的apache配置https协议,开启ssl连接

    环境:linux 配置https协议,需要2大步骤: 一.生成服务器证书 1.安装openssl软件 yum install -y openssl mod_ssl 2.生成服务器私匙,生成server ...

  8. lamp之apache配置https访问

    配置apache 使用https 注:怕其他人由于路径的原因出问题,首先声明一下,本人apache的安装目录为 : /usr/local/httpd2.4.25,如果不是,请参考进行配置 注: 对于如 ...

  9. Linux Apache配置https访问

    配置https访问 该环境是rh254课程配套的一个环境,不过配置方法步骤相同. 要求: 使用虚拟主机技术部署两个网站: 网站1: 绑定域名 www0.example.com 目录在 /srv/www ...

随机推荐

  1. 如何启动mininet实例上的wireshark图形界面

    启动wireshark 要启动mininet实例上的wireshark的图形界面,其实关键点只有两个: 保证宿主机上安装了X11 使用ssh -Y mininet@192.168.56.102 登录进 ...

  2. WatiN自动化测试

    简介 WatiN - Watir的.NET版: http://watin.sourceforge.net/ Welcome at the WatiN (pronounced as What-in) w ...

  3. win7系统如何配置JAVA环境变量

    1.在“计算机”右击选择“属性” 2.点击“高级系统设置” 3.点击“环境变量” 4.点击系统变量下面的“新建” (1)新建->变量名:JAVA_HOME变量值 C:\Program Files ...

  4. Django Model之引用一个未定义的Model

    Django Model的外键自关联

  5. GEEK学习笔记— —程序猿面试宝典笔记(二)

    所谓笔记,就是比較个人的东西,把个人认为有点意思的东西记录下来~~ 程序猿面试宝典笔记(一)基本概念 程序猿面试宝典笔记(二)预处理.const和sizeof 程序猿面试宝典笔记(三)auto_ptr ...

  6. 让超出DIV宽度范围的文字自动显示省略号...

    关键是:text-overflow: ellipsis; div.titleholder { font-family: ms sans serif, arial; font-size: 8pt; wi ...

  7. mongdb复制集搭建

    可参考官网教程 复制集增加了数据的冗余同时也提高了mongodb的可靠性,相比传统的主从架构,mongodb具有自动容灾的特性,即主库挂掉后会自动从剩下的从库中选举出一个节点做为主库(不需要人工干预) ...

  8. 如何移植.NET Framework项目至.NET Core?

    公司的项目一直采用.NET框架来开发Web项目.目前基础类库均为.NET Framework 4.6.2版本.Caching, Logging,DependencyInjection,Configur ...

  9. Kmeans原理与实现

    原理 http://www.cnblogs.com/jerrylead/archive/2011/04/06/2006910.html 实现 http://www.cnblogs.com/zjutzz ...

  10. ubuntu卸载vmware player

    sudo vmware-installer -u vmware-player 转自: http://zhidao.baidu.com/link?url=lapkBNBGIUz_mo6603CQgi_2 ...