0

0

怎样在PHP本地环境配置HTTPS_PHP本地环境配HTTPS操作【配置】

看不見的法師

看不見的法師

发布时间:2026-01-20 19:40:02

|

144人浏览过

|

来源于php中文网

原创

本地PHP环境配HTTPS主要为绕过浏览器对非localhost HTTP地址的API限制及测试强制HTTPS场景,推荐用mkcert生成并信任自签名证书,再通过Apache/Nginx配置,PHP内置服务器不支持HTTPS。

怎样在php本地环境配置https_php本地环境配https操作【配置】

本地 PHP 环境配 HTTPS 不是为了“上线安全”,而是为了绕过浏览器localhost 以外的 http:// 地址的限制(比如调用 getUserMediaservice workerGeolocation API),或者测试 OAuth2 回调、微信 JS-SDK 等强制要求 HTTPS 的场景。直接用自签名证书 + 本地信任是最可行的路径。

生成自签名证书(OpenSSL 方式)

PHP 自带的 php -S 内置服务器不支持 HTTPS,必须借助 Apache 或 Nginx。这里以最轻量、跨平台兼容性好的 mkcert 工具为主流推荐——它比手敲 openssl req 更可靠,且能自动适配现代浏览器信任链。

  • mkcert 会为你本地生成一个根证书(rootCA.pem),并把它加入系统钥匙串(macOS / Windows)或 ca-certificates(Linux),之后签发的域名证书才不会被标记为“不安全”
  • 运行 mkcert -install 一次即可,后续所有证书都基于这个可信根
  • localhost 生成证书:
    mkcert localhost 127.0.0.1 ::1
    输出两个文件:localhost+2-key.pem(私钥)和 localhost+2.pem(证书)
  • 别用 openssl req -x509 手动生成:默认不带 subjectAltName,Chrome 会直接拒绝,报错 NET::ERR_CERT_INVALID

Apache 配置 HTTPS(Windows/macOS/Linux 通用)

确认已启用 mod_sslssl_module。在 httpd.conf 或虚拟主机配置中添加:


    ServerName localhost
    DocumentRoot "/path/to/your/php/project"
    SSLEngine on
    SSLCertificateFile "/path/to/localhost+2.pem"
    SSLCertificateKeyFile "/path/to/localhost+2-key.pem"
    
        Require all granted
        AllowOverride All
    
  • 确保 Listen 443 已在主配置中启用
  • SSLCertificateFile 必须是 PEM 格式证书(不是 CRT 或 CER);如果用 OpenSSL 生成,需确保含完整证书链(通常单文件即可)
  • 重启 Apache 后访问 https://localhost,首次会提示“您的连接不是私密连接”——点击“高级”→“继续前往 localhost(不安全)”即可(仅首次,因证书已由 mkcert -install 信任)
  • 若仍报错,检查 Apache 错误日志:tail -f logs/error_log,常见问题是路径错误或权限不足(尤其 macOS 上私钥需 chmod 600

PHP 内置服务器无法直接跑 HTTPS

别折腾 php -S 加 HTTPS:它压根不支持 TLS。有人用 stunnel 或反向代理(如 nginx前端 HTTPS,转发到 php -S :8000),但复杂度陡增,且失去热重载便利性。

智能网站优化SiteSEO1.52
智能网站优化SiteSEO1.52

系统易学易懂,用户只需会上网、不需学习编程及任何语言,只要使用该系统平台,只要会打字,即可在线直接完成建站所有工作。本程序适合不懂php环境配置的新手用来在本机调试智能SiteSEO网站优化软件,安装过程极其简单。您的网站地址:http://localhost您的网站后台:登录地址: http://localhost/admin.php密 码: admin服务器套件所包含的软件:nginx-0.7

下载

立即学习PHP免费学习笔记(深入)”;

  • 开发阶段更推荐:用 Nginx/Apache 跑 HTTPS,同时用 IDE 或命令行启动 PHP CLI 脚本调试逻辑,静态资源和路由交由 Web 服务器处理
  • 若坚持用内置服务器,可临时降级需求:Chrome 从 94 版起允许 localhost 使用 http:// 调用部分敏感 API(如 mediaDevices),但 serviceWorker 仍强制 HTTPS
  • VS Code 的 PHP Server 插件、PhpStorm 的内置服务器,底层仍是 php -S,同样不支持 HTTPS

验证 HTTPS 是否生效且被信任

打开 Chrome 访问 https://localhost,地址栏左侧应显示锁形图标,点击后能看到“连接是安全的”,证书颁发者是 mkcert development CA

  • 若显示“不安全”或红色警告,右键 → “检查” → 切换到 Security 标签页,点“View certificate”确认证书是否由你本地安装的根证书签发
  • curl -k https://localhost 测试服务可达性(-k 跳过证书校验);若要严格校验,加 --cacert rootCA.pem
  • PHP 中调用外部 HTTPS 接口时,若遇到 cURL error 60: SSL certificate problem,说明 cURL 默认未信任你本地的根证书,需设置 curl_setopt($ch, CURLOPT_CAINFO, '/path/to/rootCA.pem') 或全局配置 curl.cainfo ini 项

最难的一步其实是让系统信任那个根证书——mkcert -install 成功与否,直接决定后续所有步骤是否白忙。很多问题表面是 Apache 配置错,实际是根证书没装进钥匙串或没刷新信任链。

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
php文件怎么打开
php文件怎么打开

打开php文件步骤:1、选择文本编辑器;2、在选择的文本编辑器中,创建一个新的文件,并将其保存为.php文件;3、在创建的PHP文件中,编写PHP代码;4、要在本地计算机上运行PHP文件,需要设置一个服务器环境;5、安装服务器环境后,需要将PHP文件放入服务器目录中;6、一旦将PHP文件放入服务器目录中,就可以通过浏览器来运行它。

2691

2023.09.01

php怎么取出数组的前几个元素
php怎么取出数组的前几个元素

取出php数组的前几个元素的方法有使用array_slice()函数、使用array_splice()函数、使用循环遍历、使用array_slice()函数和array_values()函数等。本专题为大家提供php数组相关的文章、下载、课程内容,供大家免费下载体验。

1664

2023.10.11

php反序列化失败怎么办
php反序列化失败怎么办

php反序列化失败的解决办法检查序列化数据。检查类定义、检查错误日志、更新PHP版本和应用安全措施等。本专题为大家提供php反序列化相关的文章、下载、课程内容,供大家免费下载体验。

1526

2023.10.11

php怎么连接mssql数据库
php怎么连接mssql数据库

连接方法:1、通过mssql_系列函数;2、通过sqlsrv_系列函数;3、通过odbc方式连接;4、通过PDO方式;5、通过COM方式连接。想了解php怎么连接mssql数据库的详细内容,可以访问下面的文章。

974

2023.10.23

php连接mssql数据库的方法
php连接mssql数据库的方法

php连接mssql数据库的方法有使用PHP的MSSQL扩展、使用PDO等。想了解更多php连接mssql数据库相关内容,可以阅读本专题下面的文章。

1443

2023.10.23

html怎么上传
html怎么上传

html通过使用HTML表单、JavaScript和PHP上传。更多关于html的问题详细请看本专题下面的文章。php中文网欢迎大家前来学习。

1235

2023.11.03

PHP出现乱码怎么解决
PHP出现乱码怎么解决

PHP出现乱码可以通过修改PHP文件头部的字符编码设置、检查PHP文件的编码格式、检查数据库连接设置和检查HTML页面的字符编码设置来解决。更多关于php乱码的问题详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1509

2023.11.09

php文件怎么在手机上打开
php文件怎么在手机上打开

php文件在手机上打开需要在手机上搭建一个能够运行php的服务器环境,并将php文件上传到服务器上。再在手机上的浏览器中输入服务器的IP地址或域名,加上php文件的路径,即可打开php文件并查看其内容。更多关于php相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1306

2023.11.13

Java JVM 原理与性能调优实战
Java JVM 原理与性能调优实战

本专题系统讲解 Java 虚拟机(JVM)的核心工作原理与性能调优方法,包括 JVM 内存结构、对象创建与回收流程、垃圾回收器(Serial、CMS、G1、ZGC)对比分析、常见内存泄漏与性能瓶颈排查,以及 JVM 参数调优与监控工具(jstat、jmap、jvisualvm)的实战使用。通过真实案例,帮助学习者掌握 Java 应用在生产环境中的性能分析与优化能力。

15

2026.01.20

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 8.9万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 8.7万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 0.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号