当前位置:首页 > 教程 > 正文内容

查看nginx配置(查看nginx配置是否正确)

2023-03-17 14:30:04教程2

查看nginx配置是否正确

修改的配置文件生效就需要向Nginx的master进程发送信号,具体就是reload与restart信号。

reload --重新加载,reload会重新加载配置文件,Nginx服务不会中断。而且reload时会测试conf语法等,如果出错会rollback用上一次正确配置文件保持正常运行。

查看nginx命令

可以在server下添加

add_header backendIP $upstream_addr;

add_header backendCode $upstream_status;

这样可在浏览器的响应头中看到backendIP字段,为后端访问的IP地址

backendCode字段,为后端服务器返回的HTTP状态码

可以用来判断哪个服务器接受了请求,并是否正常

查看nginx配置文件正确

  nginx 更改配置文件后需要重启生效。  

1、更改配置重启nginx:    kill -HUP 主进程号或进程号文件路径  或者使用  cd /usr/local/nginx/sbin  ./nginx -s reload  

2、判断配置文件是否正确:    nginx -t -c /usr/local/nginx/conf/nginx.conf  或者  cd /usr/local/nginx/sbin  ./nginx -t

查看nginx配置目录

nginx配置如下: 

 

1、定义worker进程数: 

worker_processes 10;

 

2、定义worker进程可同时服务请求数目:

worker_connections 1024;

 

3、禁止使用sendfile函数:

sendfile off;

 

4、开启空闲连接的文件检查:

linger_on_close on;

 

5、定义多个进程间通信存放文件路径及名称:

pid /var/run/nginx.pid;

 

6、定义用户和组:

user nobody nogroup;

 

7、定义worker进程数量:

worker_processes 10;

 

8、定义最大请求进程时间:

client_body_timeout 10; 

 

9、定义服务的超时时间:

send_timeout 10;

 

10、打开目录列表功能:

autoindex on;

查看nginx配置文件位置

events块:配置影响nginx服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等。

http块:可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。

server块:配置虚拟主机的相关参数,一个http中可以有多个server。

location块:配置请求的路由,以及各种页面的处理情况。

查看nginx配置文件是否生效

nginx从1.9.0开始,新增加了一个stream模块,用来实现四层协议的转发、代理或者负载均衡等。比如在内网有一个mysql服务,想暴露到公网上去使用,就可以通过nginx代理的方式通过nginx来进行内网mysql的访问。

实验环境

nginx1.12.1 : 192.168.1.19

mysql : 192.168.1.20:3306

1:编译或者升级nginx至版本1.9.0以上,编译过程中需带上--with-stream。

# ./configure --prefix=/opt/apps/nginx --with-stream

# make && make install

2:配置stream,定义代理192.168.1.20的3306端口映射为端口2333。

# vi /opt/apps/nginx/conf/nginx.conf

……

……

events {

use epoll;

worker_connections 65535;

}

#stream配置

stream {

server {

listen 2333;

proxy_connect_timeout 1s;

proxy_timeout 3s;

proxy_pass 192.168.1.20:3306;

}

}

http {

……

……

}

3:开启nginx,验证代理是否生效。

image.png

可以看到我们现在可以通过nginx代理的端口访问到内网的mysql服务了。这也直接避免了mysql直接暴露到公网,增加些许的安全。当然,利用stream也可以实现后端服务的负载均衡。

本网站文章仅供交流学习 ,不作为商用, 版权归属原作者,部分文章推送时未能及时与原作者取得联系,若来源标注错误或侵犯到您的权益烦请告知,我们将立即删除.

本文链接:https://www.xibujisuan.cn/98750705.html