项目需要本地解析一个网站,线上是https,clone下来后本地解析https,1:1模拟线上环境。
现在记录本地解析https的过程。
【准备】
(1)phpstudy下载:http://phpstudy.php.cn/
(2)phpstudy集成环境下正常运行的网站
(3)避免意外请先备份(复制)好httpd.conf配置文件
【开始】
(1)开启apache的编译ssl模块,如图打开phpstudy—其它选项设置—PHP扩张及设置—php扩展—php-openssl前面打勾
(2)如图点击打开修改httpd.conf配置文件,打开找到#LoadModule ssl_module modules/mod_ssl.so,去掉前面的注释符#(保证前面没有#号),使得ssl模块生效。
在mod_ssl.so下面新增加一条引用语句(注意此处和第3步新建的文件名要匹配) :
LoadModule ssl_module modules/mod_ssl.so
Include conf/vhosts_ssl.conf
(图2.1 打开方法)
(3)依次打开phpstudy安装文件,打开Apache打开conf文件,在conf文件夹 中创建一个名为vhosts_ssl.conf的配置文件。编辑vhosts_ssl.conf文件,增加如下内容:
图3.1 新建的:vhosts_ssl.conf文件位置、效果图示:
vhosts_ssl.conf文件内容(根据实际修改)Listen 443
SSLStrictSNIVHostCheck off
SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL
SSLProtocol all -SSLv2 -SSLv3
<VirtualHost *:443>
DocumentRoot "D:\phpStudy\PHPTutorial\WWW"
ServerName 127.0.0.1
ServerAlias 127.0.0.1
<Directory "D:\phpStudy\PHPTutorial\WWW">
Options FollowSymLinks ExecCGI
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
SSLEngine on
SSLCertificateFile "D:\phpStudy\PHPTutorial\Apache\conf\ssl\server.crt"
SSLCertificateKeyFile "D:\phpStudy\PHPTutorial\Apache\conf\ssl\server.key"
</VirtualHost>
注:启动服务失败的话,注意检查443端口的占用情况(我开始遇到的问题)
排除方法:命令行执行netstat -ano,查看端口占用情况,
netstat -ano |findstr "端口号" 可查看单独的端口号。
查看到对应的进程id之后,就可以通过id查找对应的进程名称,使用命令tasklist |findstr "进程id号"
通过命令杀掉进程,或者是直接根据进程的名称杀掉所有的进程,,在命令框中输入如下命令taskkill /f /t /im "进程id或者进程名称"