Nginx笔记
一、常见信号
信号是控制nginx工作状态的模块,我们可以在终端使用信号来控制nginx的启动、停止和配置重载等。
1、快速关机(stop):
2、正常关机(quit):处理完当前请求后再停止工作进程
nginx -s quit
3、重新加载配置文件(reload):在不影响当前任务处理的情况下让nginx新增的配置生效
nginx -s reload
二、配置文件
nginx由模块组成,这些模块由配置文件中特定的指令控制,也就是说nginx的配置文件决定了nginx及其模块的工作方式。nginx的配置文件分为主配置文件和辅助配置文件:主配置文件名为:nginx.conf,
默认存放在/etc/nginx目录中;辅助配置文件要求以.conf作为文件后缀,并且默认存放在.etc/nginx/conf.d目录中。要注意的是,nginx允许同时存在多个辅助配置文件。
nginx的指令分为简单指令和块指令。一个简单的指令由指令名称和参数组成,它们以空格作为分隔符,并以分号结尾,如:
error_page 404 /404.html;#error_page是指令名称,404和/404.html共同组成参数,作用是指定404错误显示的HTML文件。
块指令与简单指令具有相同的结构,但它不是以分号结尾,而是以花括号包围的一组附加指令结尾,如:
location /404.html{ root /home/async/www/error_page; }
如果块指令内包含其他指令,则该块指令称为上下文。常见上下文有events、http、server和location。要注意的是,这里还有一个隐藏的main上下文,它并非实际存在,类似于层级的根目录,即所有的指令
的最外层都是main。main上下文昨晚其他上下文的参考对象,例如events和http,必须写在main的上下文中,server必须写在http中,而location则必须写在server中。对于它们的关系,我们可以通过一段简单的
配置来理解:
http{ server{ location / { root /www/index index.html; } location /images/{ #... } } }
配置文件的注释符为#。以上配置默认监听80端口,当我们在本地访问端口https://localhost时,服务器将根据配置文件设定的资源路径寻找资源,并将符合条件的资源发送给客户端,如果资源不存在,则发生
404错误。我们并没有在配置中添加任何有关mian的文章,但http上写我确实包含在main中。
nginx提供了一个默认的辅助配置文件default.conf,存放在/etc/nginx/conf.d目录中,里面包含了若干server块指令示例。我们可以在终端使用如下命令查看default.conf文件的内容:
/etc/nginx/conf.d/default.conf