nginx入门篇----nginx服务器基础配置

时间:2022-07-10 04:45:21

1、nginx.conf文件结构
...                         #全局块
  events
{
  ...
  }
  http                      #http块
{
       ...                  #http全局块
    server                  #server块
     {
        ....                #server全局块
        location [P]        #location块
        {
            ....
         }
        location [P]        #location块
        {
            ....
         }
       }
     server                 #server块
     {
        ...
      }
      ...                   #http块                
}
上图可知由三部分嵌套配置块组成:全局块、events块和http块
全局块:设置nginx整体运行配置指令,通常包括服务器用户(组)、生产worker process数、pid存放目录、日志的存放目录以及配置文件的引入等。

events块:主要影响nginx服务器与用户的网络连接。常用设置包括是否对worker process下的网络连接进行序列化,是否允许同时接收多个网络连接,选取哪种事件驱动模型处理连接请求,worker process同时支持的最大连接数等

http块:nginx服务器配置中重要部分,代理、缓存和日志定义等大多数功能和第三方模块配置都可以放在这个模块中。

server块:相当于一台虚拟主机,可部署运行多个网站。常见的两个配置是本虚拟主机的监听配置和本虚拟主机的名称或IP配置。

location块:nginx服务器收到请求字符串进行匹配,地址定向、数据缓存和应答控制等功能。

2、nginx配置用户(组)
user只能在全局块配置
user [user]  [group];

3、配置允许生成的worker process数
只能在全局块中配置
worker_process num | auto;

4、配置nginx进程PID存放路径
配置时一定要包括文件名
pid file;

5、配置错误日志的存放路径
所有块都可以配置,作用域不同。错误级别由低到高,设置某个级别后,比它高的级别都会记录
error_log file | stderr [debug|info|notice|warn|error|crit|alert|emerg];

6、配置文件的引入
include file;

7、设置网络连接的序列化
防止惊醒问题
accept_mutex on | off;

8、配置是否允许同时接收多个网络连接
multi_accept on | off;

9、事件驱动模型的选择
use method;

10、设置最大连接数
默认512
worker_connections num;

11、定义MIME-Type
浏览器区分资源
include mime.type;
default_type application/octet-stream;

mime类型
cat mime.type

12、自定义服务日志
access_log path;
取消记录服务日志
access_log off;

13、配置允许sendfile方式传输文件
sendfile on | off;
sendfile_max_chunk size;

14、配置连接超时时间
默认75s
keeplive_timeout timeout [header_timeout];

15、单连接请求数上限
默认为100
keepalive_requests num;

16、配置网络监听
listen IP[:port] [default_server] [setfib=num] [backlog=num] [rcvbuf=size] [sndbuf=size] [d]eferred]....

17、基于名称的虚拟主机配置
server_name name www.xxx.com;

18、基于IP的虚拟主机配置
为eth1添加两个IP
ifconfig eth1:0 192.169.1.x1 netmask 255.255.255.0 up
ifconfig eth1:0 192.169.1.x2 netmask 255.255.255.0 up
写入启动脚本
echo "ifconfig eth1:0 192.169.1.x1 netmask 255.255.255.0 up" >> /etc/rc.local
echo "ifconfig eth1:0 192.169.1.x2 netmask 255.255.255.0 up" >> /etc/rc.local
配置两台IP虚拟主机
server_name:192.169.1.x1;
server_name:192.169.1.x2;

19、配置location块
location [..]

20、配置请求的根目录
root path;

21、更改location的URI
alias path;

22、设置网站的默认首页
index file ...;

23、设置网站错误页面
error_page code .. uri