Open xiwenAndlejian opened 5 years ago
Nginx官方文档
这是一个相当常用的命令,经常用在修改配置文件后,重新加载配置。
命令:nginx -s signal
nginx -s signal
其中signal有以下可选项:
signal
注意:此命令需要在启动 nginx 的统一用户下执行。
除了nginx -s stop可以关闭 nginx 进程外,也可以使用:kill -s QUIT nginxPid
nginx -s stop
kill -s QUIT nginxPid
使用ps -ax|grep nginx可以显示(当前用户下)所有正在运行的 nginx 进程的列表
ps -ax|grep nginx
这是一个相当有用的命令,自从有了它,我就不需要记住任意一台服务器的 nginx 配置文件路径了。
命令:nginx -t,检测配置文件语法,并测试该配置文件。
nginx -t
执行之后会有如下类似输出:
nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful
这个命令不仅会检查当前 nginx 配置文件的语法,还会输出当前配置文件路径。
nginx 由模块组成,这些模块由配置文件中制定的指令控制。指令又分为简单指令和块指令。
简单指令:包含由空格(`)分隔的名称和参数,并且以分号(;`)结尾。
`)分隔的名称和参数,并且以分号(
块指令与简单指令具有相同的结构,但它不是以分号结尾,而是以大括号({和})包围的一组附加指令结束。如果块指令可以在大括号内包含其他指令,则称为上下文(eg:events,http,server和location)
{
}
events
http
server
location
格式大概如下:
events { } http { server { location { } } } # 注释以#开头
在这里引用一文弄懂Nginx的location匹配
一下是部分节选内容
location [ = | ~ | ~* | ^~] uri { ... } location @name { ... }
=:精准匹配。只有请求的uri路径与后面字符串完全相等时,才会命中
=
uri
~:规则使用正则定义,区分大小写
~
~*:规则使用正则定义,不区分大小写
~*
^~:如果符号后的uri是最佳匹配,则采用该规则,==不再进行后续的查找==。
^~
注意:这里不再进行后续的查找是因为,当存在多个匹配的 location 块时, nginx 将选择最长前缀的的块(最准确的)。我们最常用的/前缀块,只有当其他所有 location 块都无法提供匹配时,才会使用此块。
/
file
nginx -g "pid /var/run/nginx.pid; worker_processes
;"
/usr/local/nginx
-t
Nginx 学习笔记(一)
Nginx官方文档
常用命令
启动、停止和重新加载配置
这是一个相当常用的命令,经常用在修改配置文件后,重新加载配置。
命令:
nginx -s signal
其中
signal
有以下可选项:除了
nginx -s stop
可以关闭 nginx 进程外,也可以使用:kill -s QUIT nginxPid
使用
ps -ax|grep nginx
可以显示(当前用户下)所有正在运行的 nginx 进程的列表检查配置文件是否有误(获取配置文件地址)
这是一个相当有用的命令,自从有了它,我就不需要记住任意一台服务器的 nginx 配置文件路径了。
命令:
nginx -t
,检测配置文件语法,并测试该配置文件。执行之后会有如下类似输出:
这个命令不仅会检查当前 nginx 配置文件的语法,还会输出当前配置文件路径。
配置文件结构
nginx 由模块组成,这些模块由配置文件中制定的指令控制。指令又分为简单指令和块指令。
简单指令:包含由空格(
`)分隔的名称和参数,并且以分号(
;`)结尾。块指令与简单指令具有相同的结构,但它不是以分号结尾,而是以大括号(
{
和}
)包围的一组附加指令结束。如果块指令可以在大括号内包含其他指令,则称为上下文(eg:events
,http
,server
和location
)格式大概如下:
location
在这里引用一文弄懂Nginx的location匹配
一下是部分节选内容
两种语法
修饰符(可选)
=
:精准匹配。只有请求的uri
路径与后面字符串完全相等时,才会命中~
:规则使用正则定义,区分大小写~*
:规则使用正则定义,不区分大小写^~
:如果符号后的uri
是最佳匹配,则采用该规则,==不再进行后续的查找==。匹配过程
=
)的 location,结束查找,使用它的配置。命令行参数
file
作为配置,而不是默认文件。nginx -g "pid /var/run/nginx.pid; worker_processes
sysctl -n hw.ncpu;"
/usr/local/nginx
)-t
,但另外将配置文件输出