一、什么是SSL
SSL(Security Socket Layer)全称是加密套接字协议层,它位于HTTP协议层和TCP协议层之间,用于建立用户与服务器之间的加密通信,确保所传递信息的安全性,同时SSL安全机制是依靠数字证书来实现的。
SSL基于公用密钥和私人密钥,用户使用公用密钥来加密数据,但解密数据必须使用相应的私人密钥。使用SSL安全机制的通信过程如下:用户与IIS服务器建立连接后,服务器会把数字证书与公用密钥发送给用户,用户端生成会话密钥,并用公共密钥对会话密钥进行加密,然后传递给服务器,服务器端用私人密钥进行解密,这样,用户端和服务器端就建立了一条安全通道,只有SSL允许的用户才能与IIS服务器进行通信。
提示:SSL网站不同于一般的Web站点,它使用的是“HTTPS”协议,而不是普通的“HTTP”协议。因此它的URL(统一资源定位器)格式为“https://网站域名”。
二、安装证书
首先,确保你的apache编译了ssl模块,这是支持SSL证书必要的条件(如果没有,请编译,打开phpstudy——设置——PHP模块扩展——php-openssl前面勾选上)。
第一:进入到apache目录下,httpd.conf找到#LoadModule ssl_module modules/mod_ssl.so,去掉前面的注释符,使得ssl模块生效(如果该模块已去掉注释,请不用操作)。
第二,找到配置80端口http的网站配置的地方,一般在如下路径:D:\phpStudy\Apache\conf有一个vhosts.conf的文件,按照80的配置,另起一个VirtualHost443,如下所示:
Listen 443
<VirtualHost *:443>
ServerAdmin admin@trustauth.cn #(和80一样)
ServerName trustauth.cn #(和80一样)
Errorlog /logs #(和80一样)
DocumentRoot “D:\phpStudy\WWW” #(和80一样)
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL
SSLCertificateFile /usr/local…/trustauth.cn.crt(服务器上证书路径)
SSLCertificateKeyFile /usr/local…/trustauth.cn.key(服务器上证书路径)
SSLCertificateChainFile /usr/local…/bundle.crt(服务器上证书路径)
</VirtualHost>
第三,重启apache(有可能报错,看一下443端口是否被防火墙拦截或被占用)
第四,apache正常重启后,在浏览器里面输入连接就能看到安全锁出来啦。
第五,备份好您的证书!
集成式apache的ssl部署就是这样啦,大家在部署的时候尽量找准自己的apache下的路径,上面的仅供参考!
Linux下的环境同windows配置一样。
相关搜索