如何在Apache下部署SSL证书网站实现HTTPS
HTTPS是以安全为目标的HTTP通道,简单讲是HTTP的安全版。谷歌已经制定了一项长远的计划,它的最终目标是将所有通过HTTP协议呈现的网页标为“不安全”,对于站长来说,部署SSL证书来迁移到HTTPS是一个现实和重要的问题,那么,对于Apache系统来说,如何部署SSL证书实现HTTPS协议呢?下面就讲述一下具体的实现方法。
安装好Apache, 并且确认能否安装ssl板块,假如没安装的话,用yum install mod_ssl openssl来安装ssl板块。
之后,申请并下载SSL证书文件。通常来说有四个文件,分别是:证书文件ca.pem、证书私钥文件ca.key、证书公钥文件public.pem、证书链文件chain.pem。
( 1 ) 在Apache的安装目录下创立cert目录,并且将下载的一律文件拷贝到cert目录中。假如申请证书时是自己创立的CSR文件,请将对应的私钥文件放到cert目录下并且命名为ca.key;
( 2 ) 打开 apache 安装目录下 conf 目录中的 httpd.conf 文件,找到以下内容并去掉“#”:
#LoadModule ssl_module modules/mod_ssl.so (假如找不到请确认能否编译过 openssl 插件)
#Include conf/extra/httpd-ssl.conf
( 3 ) 打开 apache 安装目录下 conf/extra/httpd-ssl.conf 文件 (也可可以是conf.d/ssl.conf,与操作系统及安装方式有关), 在配置文件中查找以下配置语句:
# 增加 SSL 协议支持协议,去掉不安全的协议
SSLProtocol all -SSLv2 -SSLv3
# 修改加密套件如下
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
SSLHonorCipherOrder on
# 证书公钥配置
SSLCertificateFile cert/public.pem
# 证书私钥配置
SSLCertificateKeyFile cert/ca.key
# 证书链配置,假如该属性开头有 '#'字符,请删除掉
SSLCertificateChainFile cert/chain.pem
( 4 ) 设置虚拟主机
假如要设置http和https同时生效,那么需要为 http 在端口 80 上设立 VirtualHost,同时为 https 在端口 443 上作相似的设置。在端口 80 上的网站的 VirtualHost 例子如下
AllowOverride All
DocumentRoot /var/www/vhosts/yoursite.com/httpdocs
ServerName yoursite.com
在端口 443 上添加一个HTTPS网站,需要在文件加入如下内容
NameVirtualHost *:443
而后再加入一个相似如下的 VirtualHost 记录:
SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/ca.crt
SSLCertificateKeyFile /etc/pki/tls/private/ca.key
AllowOverride All
DocumentRoot /var/www/vhosts/yoursite.com/httpsdocs
ServerName yoursite.com
最后,用如下指令重新启动 Apache , 就可实现网站的HTTPS功可以。
/etc/init.d/httpd restart
主机侦探SSL证书商城(http://ssl.idcspy.net/)是专售Symantec、Geotrust、Comodo以及RapidSSL等多家全球权威CA机构的SSL数字证书。并且提供多类型SSL证书申请和安装服务,免手续费,全程专业技术指导。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 如何在Apache下部署SSL证书网站实现HTTPS