没有不值得去解决的问题,也没有不值得去学习的技术!

nginx: [emerg] unknown directive “ssl” in C:\nginx-1.26.3/conf/nginx.conf:44

nginx: [emerg] unknown directive "ssl" in C:\nginx-1.26.3/conf/nginx.conf:44

1、nginx: [emerg] unknown directive “ssl” in C:\nginx-1.26.3/conf/nginx.conf:44。如图1

nginx: [emerg] unknown directive "ssl" in C:\nginx-1.26.3/conf/nginx.conf:44
图1

2、检查 Nginx 是否支持 SSL,运行以下命令检查 Nginx 是否包含 SSL 模块:

Plaintext

PS C:\nginx-1.26.3> .\nginx -V
nginx version: nginx/1.26.3
built by cl 16.00.30319.01 for 80x86
built with OpenSSL 3.0.15 3 Sep 2024
TLS SNI support enabled
configure arguments: --with-cc=cl --builddir=objs.msvc8 --with-debug --prefix= --conf-path=conf/nginx.conf --pid-path=logs/nginx.pid --http-log-path=logs/access.log --error-log-path=logs/error.log --sbin-path=nginx.exe --http-client-body-temp-path=temp/client_body_temp --http-proxy-temp-path=temp/proxy_temp --http-fastcgi-temp-path=temp/fastcgi_temp --http-scgi-temp-path=temp/scgi_temp --http-uwsgi-temp-path=temp/uwsgi_temp --with-cc-opt=-DFD_SETSIZE=1024 --with-pcre=objs.msvc8/lib/pcre2-10.39 --with-zlib=objs.msvc8/lib/zlib-1.3.1 --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_stub_status_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_auth_request_module --with-http_random_index_module --with-http_secure_link_module --with-http_slice_module --with-mail --with-stream --with-stream_realip_module --with-stream_ssl_preread_module --with-openssl=objs.msvc8/lib/openssl-3.0.15 --with-openssl-opt='no-asm no-tests -D_WIN32_WINNT=0x0501' --with-http_ssl_module --with-mail_ssl_module --with-stream_ssl_module
PS C:\nginx-1.26.3>

3、在输出中查找 –with-http_ssl_module。可以找到,说明 Nginx 已经启用 SSL 支持。如图2

在输出中查找 --with-http_ssl_module。可以找到,说明 Nginx 已经启用 SSL 支持
图2

4、重新编辑 Nginx 配置文件后,重新执行命令:.\nginx -s reload ,不再报错。如图3

重新编辑 Nginx 配置文件后,重新执行命令:.\nginx -s reload ,不再报错
图3
Nginx

server {
	listen 443;
	ssl on;
	ssl_certificate localhost.pem;
	ssl_certificate_key localhost-key.pem;
}

替换为:

Nginx

server {
	listen 443 ssl;
	ssl_certificate localhost.pem;
	ssl_certificate_key localhost-key.pem;
}

关于作者 · 持续学习与技术实践

我是一名拥有 15 年以上开发经验的技术从业者,自 2013 年起持续运营个人技术博客,记录工作与个人项目中遇到的真实问题,以及解决问题过程中的探索、实践和思考。

除了技术写作,我也在持续开发和维护自己的独立项目,探索新技术和新工具在实际场景中的应用。我始终相信,没有不值得去解决的问题,也没有不值得去学习的技术。

如果这篇文章对你有所帮助,欢迎浏览博客中的其他文章,也欢迎交流技术经验与想法。

关于我  ·  GitHub  ·  邮件联系