nginx 基本使用、借助 nginx 和 mkcert 实现本地 https://localhost 测试。

CSDN 如何将资源设置为免费?

安装和基本使用

进入 nginx 官网

下载 Mainline version 版本

解压到一个你喜欢的位置,比如解压到 C: 目录

不管配不配置环境变量,对 nginx 的所有操作都应该在对应文件夹中

基本命令的使用:

sh 复制代码
cd C:\nginx-1.25.4\
# 一定要先进入文件

start nginx
# 启动 nginx

./nginx.exe -s reload
# 应用新的配置文件(平滑关闭旧进程)

./nginx.exe -s quit
# 平滑关闭 graceful shutdown
./nginx.exe -s stop
# 快速关闭 fast shutdown

./nginx.exe -t
# 测试配置文件

其他命令

sh 复制代码
tasklist | findstr "nginx.exe"
# 查看 nginx 状态

taskkill /F /PID xx /PID xx
# 强制关闭对应 PID

本地搭建 https

安装 mkcert-v1.4.4-windows-amd64.exe

执行命令

sh 复制代码
$ .\mkcert-v1.4.4-windows-amd64.exe -install
# 安装 CA 根证书

$ .\mkcert-v1.4.4-windows-amd64.exe -CAROOT
# 查看根证书位置
# 或者运行 certmgr.msc,点击 "受信任的根证书颁发机构",可以找到 mkcert xx@xx

$ .\mkcert-v1.4.4-windows-amd64.exe localhost 127.0.0.1
# 为 localhost 和 127.0.0.1 生成证书:
# c:\Users\keety\Downloads\localhost+1.pem
# c:\Users\keety\Downloads\localhost+1-key.pem

nginx 的配置文件示例:

conf 复制代码
# C:\nginx-1.25.4\conf\nginx.conf

events {
    worker_connections  1024;
}

http {

    server {
        listen 80;
        listen [::]:80;
        # html 文件夹,指的是 nginx 目录中的 html 文件夹
        # 比如 C:\nginx-1.25.4\html
        root   html;
        index  index.html;
    }

    server {
        listen 443 ssl;
        listen [::]:443 ssl;
        server_name localhost;

        location / {
            root   html;
            index  index.html;
        }

        ssl_certificate      c:\Users\keety\Downloads\localhost+1.pem;
        ssl_certificate_key  c:\Users\keety\Downloads\localhost+1-key.pem;
    }

    server {
        listen 8080 ssl;
        listen [::]:8080 ssl;
        server_name localhost;

        ssl_certificate      c:\Users\keety\Downloads\localhost+1.pem;
        ssl_certificate_key  c:\Users\keety\Downloads\localhost+1-key.pem;

        location / {
            # 反向代理,需要运行一个网页在 6449 端口。然后通过 https://localhost:8080 就可以访问到 6449 端口的内容
            proxy_pass              http://localhost:6449;
        }
    }

}

可以将 mkcert 其添加到环境变量 path 中,然后为其创建一个软连接:

sh 复制代码
$ New-Item -ItemType SymbolicLink -Target mkcert-v1.4.4-windows-amd64.exe -Path C:\soft\it\mkcert\mkcert.exe
# 注意我的 C:\soft\it\mkcert\ 已经添加到环境变量 path 中。其中 mkcert-v1.4.4-windows-amd64.exe 也在 C:\soft\it\mkcert\ 里面。注意两个 .exe 后缀名都不能省略

$ mkcert
# 测试

最终效果:不会出现 this server could not prove that it is 127.0.0.1; its security certificate does not specify subject alternative names. this may be caused by a misconfiguration or an attacker intercepting your connection. 等错误!

相关推荐
我要见SA姐110 小时前
告别 Copilot?Codex 本地化部署指南
运维·数据库·机器学习·oracle·回归
Elastic 中国社区官方博客11 小时前
列式存储并不等同于列式数据库。Columnar 模式为 Elasticsearch 带来了什么
大数据·运维·数据库·elasticsearch·搜索引擎
fengkai454511 小时前
八、Docker详解4-5
运维·docker
智恒百亿12 小时前
RTX 5090 八卡服务器 vs RTX PRO 6000 整机:AI 推理、微调与渲染选型部署指南
运维·服务器·rtx5090
蓝胖的四次元口袋14 小时前
Docker Compose多容器编排与Nginx集群实战
运维·nginx·docker compose
懂软件的胡子个哥14 小时前
微信 API 消息回调怎么设计,才能避免丢消息和重复处理
运维·微信·架构·wechatapi·个人微信号二次开发
吉甫作诵14 小时前
Redis 常用命令大全:11 大类命令速查手册
运维·数据库·redis·缓存·nosql
师傅别念了15 小时前
Nginx 反向代理配置指南,看完这篇就够了
nginx
Acrellea16 小时前
告别粗放式能耗管理!安科瑞EIOT平台助力产业园区智慧低碳运营
运维·安全·能源
Databuff16 小时前
五款主流 SSH 免费工具介绍
运维·ssh·运维开发