PHPStudy配置SSL教程:轻松启用HTTPS安全访问

2025年08月02日/ 浏览 4


一、为什么要在PHPStudy中启用HTTPS?

作为国内最流行的PHP集成环境之一,PHPStudy默认使用HTTP协议。但在实际开发中,我们常遇到需要HTTPS的场景:

  1. 微信小程序开发要求后端接口必须HTTPS
  2. OAuth2.0等授权流程需要安全连接
  3. 测试混合内容(Mixed Content)问题
  4. 模拟生产环境的安全策略

通过配置SSL证书,我们可以用https://localhost访问本地项目,极大提升开发效率。

二、准备工作

确保你的环境满足:
– PHPStudy V8.1+(本文以Apache为例,Nginx配置类似)
– 已安装OpenSSL(PHPStudy自带)
– 管理员权限运行CMD

三、详细配置步骤

3.1 生成自签名证书

  1. 创建证书目录
    在PHPStudy安装目录下新建cert文件夹,路径示例:
    D:\phpstudy_pro\Extensions\cert

  2. 生成私钥和证书
    以管理员身份运行CMD,执行:
    bash
    openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout localhost.key -out localhost.crt

    按提示输入信息(可全部回车跳过,但Common Name需填写localhost

  3. 转换为PFX格式(可选)
    某些场景需要PKCS12格式:
    bash
    openssl pkcs12 -export -out localhost.pfx -inkey localhost.key -in localhost.crt

3.2 修改Apache配置

  1. 打开PHPStudy面板 → 网站 → 对应站点的”配置文件”

  2. <VirtualHost *:80>下方添加:
    apache
    <VirtualHost *:443>
    ServerName localhost
    DocumentRoot "D:/www/your_project"
    SSLEngine on
    SSLCertificateFile "D:/phpstudy_pro/Extensions/cert/localhost.crt"
    SSLCertificateKeyFile "D:/phpstudy_pro/Extensions/cert/localhost.key"
    </VirtualHost>

  3. 确认httpd.conf已加载SSL模块:
    apache
    LoadModule ssl_module modules/mod_ssl.so
    Include conf/extra/httpd-ssl.conf

3.3 信任证书(解决浏览器警告)

  1. 双击localhost.crt → 安装证书
  2. 选择”本地计算机” → “将所有证书放入下列存储” → 浏览选择”受信任的根证书颁发机构”
  3. 完成导入后,重启浏览器访问https://localhost

四、常见问题解决方案

4.1 443端口被占用

bash
netstat -ano | findstr 443
taskkill /pid 占用PID /f

4.2 Chrome仍显示”不安全”

  • 地址栏输入chrome://flags/#allow-insecure-localhost并启用
  • 或使用Firefox开发(对自签名证书更友好)

4.3 PHPStudy重启后配置失效

检查是否修改了httpd.conf但未保存,部分版本需要手动保存到phpstudy.ini

五、进阶技巧

  1. 多域名配置
    为不同项目创建不同证书,修改hosts文件配合虚拟主机使用

  2. Let’s Encrypt实战
    使用acme.sh申请免费证书(需域名解析到本地)

  3. PHP curl请求本地HTTPS
    添加选项绕过验证:
    php
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

六、总结

通过本文教程,你已经能够:
– ✓ 生成标准的自签名证书
– ✓ 配置Apache/Nginx支持HTTPS
– ✓ 解决常见的安全证书警告
– ✓ 实现本地开发环境与生产环境协议一致

开发完成后,只需将相同的配置流程应用到线上服务器即可。PHPStudy的HTTPS支持虽然需要手动配置,但整个过程对理解Web安全机制很有帮助。遇到问题建议查看PHPStudy日志文件(Apache/logs/error.log)获取详细错误信息。

提示:生产环境务必使用CA机构颁发的正式证书,自签名证书仅限开发测试使用。

picture loss