configure脚本:

1、cat <EOF >>test.txt

     EOF

多行追加


2、uname

用于打印当前操作系统的相关信息


3、2>/dev/null

/dev/null 代表空设备文件

1 表示stdout标准输出,系统默认值是1,所以">/dev/null"等同于"1>/dev/null" 
2 表示stderr标准错误 
& 表示等同于的意思,2>&1,表示2的输出重定向等同于1


4、configure脚本生成的文件

默认在obj/

|---ngx_auto_headers.h    保存了宏

|---autoconf.err    保存configure执行过程中产生的结果

|---ngx_auto_config.h        保存了宏

|---ngx_modules.c   关键文件,定义了ngx_modules数组,该数组指明了每个模块在Ngnix中的优先级

|---src    存放编译时产生的目标文件

|        |---core

|        |---event

|        |        |---modules

|        |---os

|        |        |---unix

|        |        |---win32

|        |---http

|        |        |---modules

|        |                |---perl 

|        |---mail

|        |---misc

|---Makefile    编译Nginx工程、在加入install参数后安装Nginx


Nginx的命令行控制:

1、默认启动方式

    直接执行nginx二进制程序

    /usr/local/nginx/sbin/nginx

    不加参数默认读取 默认路径下的配置文件/use/local/nginx/conf/nginx.conf

2、另行指定配置文件

    /usr/local/nginx/sbin/nginx -c /tmp/nginx.conf

    此时会读取-c 后面的文件来启动Nginx

3、另行指定安装目录

    -p   


4、另行指定全局配置项

    /usr/local/nginx/sbin/nginx -g "pid /var/nginx/test.pid;"会把pid文件写到test.pid中

    -g的一个约束条件是指定的配置项不能与默认路径下的nginx.conf中的配置项冲突,具体可查看/usr./ocal/nginx/conf/nginx.conf文件内容;另一个约束条件是以-g方式启动的Nginx服务在执行其他命令时,需把-g参数也带上,否则可能出现配置项不匹配的情形


5、测试配置信息是否有错误

    /usr/local/nginx/sbin/nginx  -t


6、在测试配置阶段不输出信息

     /usr/local/nginx/sbin/nginx  -t -q


7、显示Nginx版本信息

    /usr/local/nginx/sbin/nginx  -v


8、显示版本信息和编译阶段的参数

    /usr/local/nginx/sbin/nginx  -V


9、快速地停止服务

    /usr/local/nginx/sbin/nginx -s stop   

    强制停止Nginx服务, -s告诉Nginx程序向正在运行的Nginx服务发送信号量,Nginx程序会通过/usr/local/nginx/logs/nginx.pid文件获取master进程的ID,再向master进程发送TERM信号来快速关闭Nginx服务

    效果和kill -s SIGTERM <nginx master pid> 一样


    worker进程与master进程收到信号后会立刻跳出循环,退出进程   


10、“优雅”地停止服务

    /usr/local/nginx/sbin/nginx -s quit

    会发送QUIT信号给master进程    效果和kill-s SIGQUIT <nginx master pid> 一样

    首先会关闭监听端口,停止接收新的连接,然后把当前正在处理的连接全部处理完,最后再退出进程


11、使运行中的Nginx重读配置项并生效

     /usr/local/nginx/sbin/nginx -s reload

    Nginx会先检查配置项是否有误,如果正确则以“优雅”的方式关闭,在重新启动Nginx

    效果同kill -s SIGHUP <nginx master pid>


12、日志文件回滚

    /usr/local/nginx/sbin/nginx -s reopen  

    重新打开日志文件,这样可以先把当前日志文件改名或转移到其他目录中进行备份,再重新打开时就会生成新的日志文件


13、平滑升级Nginx

    当服务器升级到新版本时,必须将旧的二进制文件替换掉,nginx支持不重启服务完成过新版本的平滑升级

    1、通知正在运行的旧版本Nginx准备升级,向master进程发送USER2信号

            kill -s SIGUSER2 <nginx master pid>

        这时会重命名/usr/local/nginx/logs/nginx.pid为/usr/local/nginx/log/nginx.pid.oldbin

    2、以以上方式的任一种启动新版本的Nginx,这时通过ps可看到旧版本的服务还在运行

    3、通过kill向旧版本master进程发送SIGQUIT信号即可,以“优雅”方式关闭

    

14、显示命令行帮助

      /usr/local/nginx/sbin/nginx -h

      /usr/local/nginx/sbin/nginx -?


关闭80端口

fuser -k 80/tcp