nginx命令
1、使用nginx操作命令前提条件:必须进入nginx的目录
- user/local/nginx/sbin
2、查看nginx的版本号
- ./nginx -v
3、启动nginx
- ./nginx
4、关闭nginx
- ./nginx -s stop
5、重新加载nginx
- ./nginx -s reload
nginx配置文件
1、nginx配置文件位置
- user/local/nginx/conf/nginx.conf
2、nginx配置文件组成 nginx配置文件分三部分 1、全局块
- 从配置文件开始到events块之间的内容,主要会设置一些影响nginx服务器整体运行的配置指令,主要包含配置运行Nginx服务器的用户、允许生成的worke rprocess数,进程PID存放路径、日志存放路径和类型以及配置文件的引入等
2、events块
- events块涉及的指令主要影响Nginx服务器与用户的网络连接,常用的设置包括是否开启对多work process下的网络连接进行序列化,是否允许同时接收多个网络连接,选取哪种事件驱动模型来处理连接请求,每个word process可以同时支持的最大连接数等
3、http块
-
Nginx服务器配置中最频繁的部分,代理、缓存和日志定义等绝大多数功能和第三方模块的配置都在这里 ⚠️:http块也可以包括http全局块、server块
(1) http全局块- http全局块配置的指令包括文件引入、MIME-TYPE定义、日志自定义、连接超时时间、单链接请求上限等
(2)server块
- 这块和虚拟主机有密切关系,虚拟主机从用户角度看,和一台独立的硬件主机是完全一样的,该技术的产生是为了节省互联网服务器硬件成本
- 每个http块可以包括多个server块,而每个server块相当于一个虚拟主机
- 而每个server块也分为全局server块,以及可以同时包含多个location块
1、全局server块
- 最常见的配置是本虚拟主机的监听配置和本虚拟主机的名称或IP配置
2、location块
- 一个server块可以配置多个location块
- 这块的主要作用是居于Nginx服务器接收到的请求字符串(例如server_name/uri-string),对虚拟主机名称(也可以是IP别名)之外的字符串(例如前面的/uri-string)进行匹配,对特定的请求进行处理。地址定向、数据缓存和应答控制等功能,还有许多第三方模块的配置也在这里进行
1、=:用于不含正则表达式的uri前,要求请求字符串与uri严格匹配,如果匹配成功,就停止继续向下搜索并立即处理该请求
2、~:用于表示uri包含正则表达式,并且区分大小写
3、~*:用于表示uri包含正则表达式,并且不区分大小写
4、^~:用于不含正则表达式的uri前,要求Nginx服务器找到标识uri和请求字符串匹配度最高的location后,立即使用此loaction处理请求,而不再使用location块中的正则uri和请求字符串做匹配