第一步:打开【php-openssl】选项
点击【其他选项菜单】按钮→选择【PHP扩展及设置】→选择【PHP扩展】→在【php-openssl】选项上打钩即可。
第二步:使SSL模块生效(需改任何文件时,一定要备份源文件,不要觉得自己很牛逼)
打开目录【phpStudy】→【Apache】→【conf】找到【httpd.conf】文件。打开该文件,修改2个地方,修改完成后,记得保存:
第一个:找到【LoadModule ssl_module modules/mod_ssl.so】这一行,如果前面有#,去掉#,如果没有,就不需要改动,保持不变即可。
第二个:找到【Include conf/extra/httpd-ssl.conf】这一行,如果前面有#,去掉#,如果没有,就不需要改动,保持不变即可。
第三步:复制SSL证书文件到指定目录
从任何网站申请的SSL证书都会包含3个文件:
1_root_bundle.crt (证书链文件)
2_www.domain.com_cert.crt(证书文件)
3_www.domain.com.key(私钥文件)
将这三个文件复制到指定目录,自己可以选择,我建议复制到该目录下
【phpStudy】→【Apache】→【conf】→【sssl】目录下。是【sssl】目录,需要新建的,原来没有的,【ssl】文件夹是原来就有的。看清楚了。
第四步:配置(关键的一步)
打开目录【phpStudy】→【Apache】→【conf】→【extra】找到【httpd-ssl.conf】文件。打开该文件。
该文件下的内容大部分都是被注释了的。就是前面都带着#。你可以全部删除掉。只需要把我下面配置的代码,复制进去就ok。
如果你的【phpStudy】也是安装在c盘的根目录下,可以直接复制,如果不是,记得修改路径。
现在假设我们需要配置的域名是:ssldun.com。只是演示用,你复制的时候,记得修改成你自己的域名
代码开始:
Listen 443
SSLPassPhraseDialog builtin
SSLSessionCache "shmcb:c:/phpStudy/Apache/logs/ssl_scache(512000)"
#这一行就有一个路径,记得修改成你的
SSLSessionCacheTimeout 300
<VirtualHost *:443>
DocumentRoot "C:phpStudyWWW"
#这一行就有一个路径,记得修改成你的
ServerName www.1818988.com:443
ServerAdmin admin@example.com
ErrorLog "c:/phpStudy/Apache/logs/error.log"
#这一行就有一个路径,记得修改成你的
TransferLog "c:/phpStudy/Apache/logs/access.log"
#这一行就有一个路径,记得修改成你的
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
#下面三行是配置证书文件,注意修改路径和对应文件名称,别搞混了
SSLCertificateFile "C:/phpStudy/Apache/conf/sssl/ssldun.crt"
SSLCertificateKeyFile "C:/phpStudy/Apache/conf/sssl/ssldun.key"
SSLCertificateChainFile "C:/phpStudy/Apache/conf/sssl/CABundle.crt"
#网上的很多教程是不配置这个证书链文件的,如果不配置,微信浏览器打开是白板,什么都看不见,其他浏览器访问会提示不安全链接。所以必须要配置
<FilesMatch ".(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "C:phpStudyWWW">
#这一行就有一个路径,记得修改成你的
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>
BrowserMatch ".*MSIE.*"
nokeepalive ssl-unclean-shutdown
downgrade-1.0 force-response-1.0
CustomLog "C:/phpStudy/Apache/logs/ssl_request.log"
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x "%r" %b"
</VirtualHost>
配置代码结束。
第五步:重新启动apache即可生效