nginx的详细使用说明(上)

放肆的年华 提交于 2019-12-06 16:25:31

 时下在大型的网络站点上,大部分都是采用LNMP部署的结构。这里主要理清下Nginx的部署,对nginx的使用做一个小结(另外俩个小结一个是安装小结,还有一个部署小结)。

  1. 首先登录服务器查看nginx是否安装(虽然很弱智,但是查看用的是何种web服务器工作还是非常有必要的)

   which   nginx   

 

   (告诉你该命令在哪里,如果没有安装,系统会提示你没有该命令ng nginx之类的)

2.确认nginx的默认目录(新手用Linux的时候,最苦恼的是找到对应的安装目录)

输入whereis nginx  

 

除掉执行目录  剩下的那个就是安装目录。(一般默认执行目录都在usr/bin/nginx下,而对应的安装会在/usr/local/nginx下)

如果安装的时候还需要一些拓展库之类的,会放到libinclude目录下,例如mysql服务


 

3.切换进入对应的nginx目录后,可以看到如下列表(这是LNMP一键安装的默认目录,对于大部分部署而言,这种默认目录也是非常常见的)

 

 


 

一般常用的三个目录 

 conf(nginx的核心配置目录)

 html(访问nginx成功或者错误文件会存放在这里

logs(访问nginx的错误日志还有一个nginxpid文件,nginx异常的时候,首先查看的是这个地方,检测nginx的异常非常有帮助)

4.进入nginx的核心配置模块(对于一般的开发而言,进入conf模块是最常用的功能,配置站点,特别是配置比较多的时候,需要经常出入该地方),由于我用的是一键安装LNMP,默认情况下已经给配置了N多常用的开源系统的重写配置,看上去比较杂,关于nginx的重写是一个比较复杂的问题,另外会有博客进行总结。

 


 

 

配置nginx最核心的文件nginx.conf(修正一些性能常用的核心文件),将其显示出来进行分析。

5.下面进行逐行解析:

定义nginx的用户和用户组。

查看用户可以用cat /etc/passwd进行查看


 

表示含义:www用户密码 保存在/etc/shadow,系统的用户id是1000组别gid是1000,

用户拥有的目录:/home/www(这是很多程序默认放到/home/www目录下执行的原因,在其他目录下,需要更改权限,否则直接报错无法运行,这是很多配置好了nginx无法运行的问题原因) 

可以运行的命令 /bin/bash

常见的403错误 经常会因为没有目录执行权限出现该问题

6.nginx的进程数,一般建议等于CPU的核数(自动进程里一般和CPU内核是相等的,这样可以最大限度的利用CPU功效)

 

查看当前nginx的进程  ps -ef | grep nginx

 

 

7.错误日志(该错误日志是默认站点的错误日志,在配置里是可以进行改动的)

 

8.进程文件。每个请求都会交给一个进程进行处理(nginx启动的时候会启动多个进程,发送请求的时候,需要知道是哪个进程,把pid写进文件进行识别是一个比较简单的做法)

 

9.最大的文件打开数(服务器打开文件是有个上限的,如果不限定打开的文件,该上限会是系统的打开文件上限)

 

10.nginx的事件(现在服务器性能一般都比较高,会选择epoll

#参考事件模型,use [ kqueue | rtsig | epoll | /dev/poll | select | poll ]; epoll模型是Linux 2.6以上版本内核中的高性能网络I/O模型,如果跑在FreeBSD上面,就用kqueue模型。

#单个进程最大连接数(最大连接数=连接数*进程数)

worker_connections 65535;

 

Multi_accept on 

#(默认情况是关闭的,multi_acceptNginx接到一个新连接通知后调用accept()来接受尽量多的连接,否则会需要不停的开启连接来接受同一个站点的请求,可以节省大量不同访问带来的开销 )

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!