飞多多小程序 发表于 2022-7-11 20:01:40

windows服务器PHPstudy的Apache环境下配置ssl证书需要设置的几个地方

windows服务器PHPstudy的Apache环境下配置ssl证书需要设置的几个地方

今天复制论坛内的一篇帖子到一个网站,发现图片不显示,想到是因为HTTPS站点不加载http图片素材的原因,于是想给站点加一个ssl证书以实现图片的https化。目前只想弄图片,关于整站HTTPS的事情暂时用不到,以后再说,这里说明一点:加了证书以后,站点还是以http协议的形式存在,图片也是,但其实图片是拥有了双从属性的,既可以通过http访问图片路径,也可以通过https访问图片路径,这就可以达到复制http站点内容到https站点还能正常加载图片的目的,思路有了然后就开始捣鼓吧。

老样子,百度里先看看有没有现成的教程,有的话直接拿来用,不行再自己研究,好在有一些琐碎的帖子,整理一下发出来记录一下,方便以后查阅。

一.申请SSL证书
这个很多渠道,有很多免费证书,单域名的就行,好多云网站都有提供,比如阿里云,申请好以后下载好。

二.建个目录,解压证书
在服务器内建个文件夹,为了好找就在PHPstudy程序里建吧,比如\PhpStudy\Apache\conf\cert,把压缩文件解压出来,阿里云提供的是3个文件,这个看了不同的几个帖子,关于3个文件有不同的处理方式,这里只记录我实践后可行的。


三.打开phpStudy,如图所示,找到“php-openssl”




四.打开配置文件,点击“httpd-conf”




五.找到
#LoadModule ssl_module modules/mod_ssl.so去掉前面的注释符#(保证前面没有#号),使得SSL模块生效。




在mod_ssl.so下面新增加一条引用语句:
LoadModule ssl_module modules/mod_ssl.so Include conf/vhosts_ssl.conf






六.依次打开phpstudy安装文件,打开Apache打开conf文件,在conf文件夹 中创建一个名为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 "项目根路径,注意斜杠朝右\这种格式"
      ServerName 填写域名
      ServerAlias 还是填写域名
      <Directory "项目根路径,注意斜杠朝右\这种格式">
          Options FollowSymLinks ExecCGI
          AllowOverride All
          Order allow,deny
          Allow from all
          Require all granted
      </Directory>
      SSLEngine on
         SSLCertificateFile "D:\PhpStudy\Apache\conf\cert\8097467_bbs.weixinrj.com_public.crt"
         SSLCertificateKeyFile "D:\PhpStudy\Apache\conf\cert\8097467_bbs.weixinrj.com.key"
         SSLCertificateChainFile "D:\PhpStudy\Apache\conf\cert\8097467_bbs.weixinrj.com_chain.crt"
    </VirtualHost>

八.最后需要重启phpStudy,重启之后,则完成windows服务器PHPstudy的Apache环境下配置ssl证书需要设置的几个地方的步骤。


注意,三个文件全部调用也行,把根证书和chain证书合并成一个调用也行。还有就是文件所在的位置和文件的名称一定要和引用的语句对应上,常见错误出现在文件名里有中横线-和下划线_的时候,易混淆。
不同版本的PHPstudy程序结构路径可能略有差别。



页: [1]
查看完整版本: windows服务器PHPstudy的Apache环境下配置ssl证书需要设置的几个地方