Beginner’s Guide
今天下午没有。就翻译了nginx官方的文章,比较仓促。语言上没有怎么雕琢。我会逐步完善。欢迎大家指正
nginx官网文章地址:http://nginx.org/en/docs/beginners_guide.html
这个指导对nginx做了一个基础的的介绍和用nginx可以做的一些简单的任务,确保读者的的机器上已经安装了nginx,如果没有安装,请看安装nginx页面,这个指导描述了怎样开启,关闭和重启它的配置,解释配置文件的结构和描述怎样配置nginx的非静态服务,怎样配置nginx作为一个代理服务器和怎样把nginx与fastcgi应用连接起来。
nginx有一个主进程和一些worker进程,主进程的主要目的是读取和执行配置和确保worker进程正常运行,worker进程处理真实的请求,nginx雇佣event-based模式和系统独立的机制去有效分发请求给worker进程。worker进程的数量被定义在配置文件中和被设置好的配置文件,或者自适应cup的核数。
nginx的工作方式和模块被确定在配置文件,配置文件的的默认是名字是nginx.conf,放在/usr/local/nginx/conf, /etc/nginx, 或者/usr/local/etc/nginx目录下。
开始,停止,重启配置
运行可执行的文件,开启nginx,一旦nginx被开启,nginx通过可执行 -s parameter 控制。用以下的语法:
nginx -s singal
以下是可以用到的信号:
stop -快速关闭nginx
quit - 平滑的关闭nginx
reload - 重新加载配置文件
reopen - 重新打开日志文件
比如,停止worker进程去结束正在服务的外部请求。以下的命令能被执行:
nginx -s quit
注:这个命令的执行应该与开启nginx的用户是同一用户
被改变配置文件只有到重新加载配置后才能被应用,重启配置,执行以下命令:
nginx -s reload
一旦主进程收到重启配置的信号,nginx会检查新配置文件的语法的正确性和试着应用被提供的配置,如果成功,主进程会开启新的worker进程和发送一下信息到老的worker进程,要求老的worker进程关闭,否则,主进程将会回滚到改变前的配置和继续用老配置执行。老worker进程收到关闭的命令,停止接受新的连接和继续执行当前的请求直到所有的的请求被执行完毕。之后,老的worker进程退出。
对nginx进程发送的信号也可用unix工具的帮助。比如kill工具。这类信号被直接发送到一个被给定的进程ID的进程。nignx主进程的进程ID被默认写到nginx.pid文件中。此文件在/usr/local/nginx/logs 或者/var/run文件下。例如,如果主进程ID是1628,对nginx发送Quit信号关闭nginx。执行以下命令:
kill -s Quit 1628
获取所有正在运行的nginx进程,可以用ps工具,比如,用以下方式:
ps -ax | grep nginx
想要获取发送到nginx的更多信号,请看controller nginx
配置文件的结构
nginx是由在配置文件中被特定的指令控制的模块组成的。指令被划分成一些简单的指令和指令模块。一个简单的指令是由名字和以空格分离的参数组成,以”;”结尾。指令块有同样结构作为一个简单的指令。但是代替“;”,指令块是用”{}”结尾的。如果一个指令块内部有其他的指令。它被叫做context(例如:events,http,server,location)
运行静态内容
web 服务器的一个重要的任务是运行文件(比如 图片或者静态html页面)。你可以实现一个例子,通过一个请求。文件将会通过不同的本地文件夹分发运行:/data/www (可能包括html文件) and /data/images (包含图片)。这要求编辑配置文件和etting up of a server block inside the http block with two location blocks.
首先,建立/data/www目录,并且放一个index.html文件(可以写入任何内容)在目录下,建立/data/images目录来存放图片。
下一步,打开配置文件,配置文件中默认有几个server例子,未完待续