给局域网地址配置cert证书
最近在开发app为了测试方便 80端口app支持的不是很好,用443端口只差个证书
第一步:安装 mkcert 工具
你需要在部署网站的机器(或你的开发机)上安装 mkcert:
- Windows:使用包管理器安装,在终端(PowerShell)中运行 choco install mkcert 或 scoop install mkcert。也可以直接去 GitHub 的 FiloSottile/mkcert 发布页下载 .exe 文件。
- macOS:使用 Homebrew 安装,在终端运行 brew install mkcert。
- Linux (Ubuntu/Debian):先安装依赖 sudo apt install libnss3-tools,再下载对应的二进制文件并赋予执行权限。
第二步:生成本地根证书并签发 IP 证书
1. 安装本地根证书(CA)
cd d:\ser\cert
mkcert -install这一步会将本地根证书添加到系统的信任列表中,之后用它签发的所有证书都会被浏览器直接信任。
2. 为局域网 IP 生成证书
mkcert 192.168.10.10第二步:apache2 配置证书及443
编辑 d:\ser\apache24\conf\httpd.conf
找到
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule ssl_module modules/mod_ssl.so以上两行 去掉前面的 注释
编辑 d:\ser\apache24\conf\extra\http_vhosts.conf
添加以下内容
Listen *:443
<IfModule mod_ssl.c>
<VirtualHost 192.168.10.10:443>
ServerName 192.168.10.10
DocumentRoot "D:\ser\htdocs\newhome\restful\web"
<Directory "D:\ser\htdocs\newhome\restful\web" >
DirectoryIndex index.php
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/frontend_error.log
CustomLog ${APACHE_LOG_DIR}/frontend_access.log combined
SSLEngine on
SSLCertificateFile "D:\ser\cert\192.168.10.10.pem"
SSLCertificateKeyFile "D:\ser\cert\192.168.10.10-key.pem"
</VirtualHost>
</IfModule>重启 apache24 服务
访问正常

局域网其他设备访问的注意事项
- 信任根证书:如果你需要用局域网内的其他电脑或手机访问 https://192.168.10.10且不显示警告,需要运行 mkcert -CAROOT 找到 rootCA.pem 文件。将该文件复制到其他设备上,并手动将其安装到系统的“受信任的根证书颁发机构”中。
- 防火墙端口:确保 192.168.10.10 这台机器的防火墙已经放行了 443 端口,否则其他设备将无法连接。
随想:
如果 配置 hosts 域名与ip解析 配合路由器 估计…… 嘿嘿
登录后可以发表评论与回复。
还没有评论,来做第一个发言的人。