Nginx配置文件详解:
Nginx的主要配置文件是nginx.conf。 该配置文件由三部分组成,即全局块、事件块和http块。 http块还包含http全局块和多个服务器块。
每个服务器块可以包含一个服务器全局块和多个位置块。 同一配置块中嵌套的配置块之间没有顺序关系。
配置文件支持大量的可配置指令,其中大部分并不具体属于某个块。 同一条指令放在不同级别的块中,其作用范围也不同。 一般情况下,高层块中的一条指令可以作用于它所在的块以及该块所包含的所有低层块。
如果一条指令同时出现在不同级别的两个块中,则采用“就近原则”,即以下级块中的配置为准。 例如,如果一个指令同时出现在http全局块和服务器块中,并且配置不同,则以服务器块中的配置为准。
全局块:
全局块是默认配置文件从头到事件块的一部分。 主要设置一些影响Nginx服务器整体运行的东西。 配置指令,此,这些指令的作用范围是Nginx服务器全局。
通常包括配置运行Nginx服务器的用户(组)、允许生成的worker进程数量、Nginx进程PID存储路径、日志存储路径和类型以及配置介绍文件。
这个问题主要出现在Nginx配置上。 原因可能是配置中没有启用SSL模块。 该错误是由于Nginx版本问题引起的。
Nginx1.15之前,HTTPS服务配置如下:
server{
listen443;
服务器域名
ssl启用;
ssl_certificateSSL;
ssl_certificate_keySSL证书私钥;
ssl_ciphers加密算法;
ssl_protocols加密协议;
ssl_pre fer_server_ciphersactive;
}
但是如果在Nginxversion1.15中设置这个配置是错误的启动Nginx有时系统会报告错误,因为不再支持SSLON等配置,应将其删除。 但是删除那行代码并重新启动Nginx后,你会发现浏览器访问页面时会出现“ERR_SSL_PROTOCOL_ERROR”错误。
所以,在Nginx1.15版本下,我们需要做如下配置:
server{
listen443ssl;
domain网站名称服务器名称;
ssl_certificateSSL证书;
ssl_certificate_keySSL证书私钥;
ssl_ciphers加密算法;
加密协议ssl_protocols;
ssl_pre fer_server_ciphersactive;
}
重启Nginx后,我们的HTTPS服务就正常了。 另外,如果你的网站包含IPv6,那么当网站绑定证书时,所有的IP,包括ip6和ip4,都必须绑定到证书上。
上一篇:nginx配置php
下一篇:程序员nginx发音