Nginx 文件夹解析

  • 1. Nginx 的安装 (手动安装)
  • 2. Nginx 中有关的文件夹
  • 2.1 日志轮转: /etc/logrotate.d/nginx
  • 2.2 主配置文件: /mnt/data/nginx/conf/nginx.conf
  • 2.3 子配置文件夹:
  • 2.4 默认配置文件: /mnt/data/nginx/conf/nginx.conf.default
  • 2.5 CGI 相关配置文件和编码转换映射文件:
  • 2.6 文件管关联程序, MIME 相关配置文件:
  • 2.7 第三方模块:
  • 2.8 主程序文件: /mnt/data/nginx/sbin/nginx
  • 2.9 页面文件夹: /mnt/data/nginx/html
  • 2.10 日志文件夹: /mnt/data/nginx/logs


1. Nginx 的安装 (手动安装)

Nginx 的安装链接:

2. Nginx 中有关的文件夹

介绍手动安装, 解压路径为 /mnt/data/nginx-1.16.1, 安装路径为 /mnt/data/nginx.

2.1 日志轮转: /etc/logrotate.d/nginx

yum 安装的 Nginx 会自动创建日志轮转. 手动安装则没有, 可自己创建.

内容:

/var/log/nginx/*log {
    create 0644 nginx nginx
    daily
    rotate 10
    missingok
    notifempty
    compress
    sharedscripts
    postrotate
        /bin/kill -USR1 `cat /run/nginx.pid 2>/dev/null` 2>/dev/null || true
    endscript
}

解析:

daily: 可以选择 weekly, monthly, 切割周期.
rotate 10: 一次存储10个文件, 超出数量最早生成的文件会被删除.
missingok: 忽略错误.
notifempty: 空文件不存储.
compress: 启动压缩.
其它命令执行完成之后, 再执行 postrotate 与 endscript 中间的命令, 该条命令就是循环执行的命令, 前面是循环执行的规则.

原理:

/etc/cron.d/0hourly 文件执行 /etc/cron.hourly/0anacron 文件.
/etc/cron.hourly/0anacron 文件执行 /etc/cron.daily/logrotate 文件.
/etc/cron.daily/logrotate 文件循环执行 /etc/logrotate.d/nginx 文件.

2.2 主配置文件: /mnt/data/nginx/conf/nginx.conf

yum 安装的 Nginx 在 /etc/nginx/nginx.conf.

主配置文件解析:

2.3 子配置文件夹:

yum 安装的 Nginx 会自动创建 /etc/nginx/nginx.d. 手动安装则没有, 可自己添加, 但手动安装添加没有多大意义.
因为手动安装的配置文件都在 /mnt/data/nginx/conf 文件夹下.

若子配置文件夹为 /mnt/data/nginx/conf.d, 则需在主配置文件 nginx.conf 中添加下面内容

include /mnt/data/nginx/conf.d/*.conf

2.4 默认配置文件: /mnt/data/nginx/conf/nginx.conf.default

yum 安装的 Nginx 在 /etc/nginx/nginx.d/nginx.conf.default.

2.5 CGI 相关配置文件和编码转换映射文件:

/mnt/data/nginx/conf/fastcgi.conf
/mnt/data/nginx/conf/fastcgi.conf.default
/mnt/data/nginx/conf/fastcgi_params
/mnt/data/nginx/conf/fastcgi_params.default
/mnt/data/nginx/conf/koi-utf
/mnt/data/nginx/conf/koi-win
/mnt/data/nginx/conf/scgi_params
/mnt/data/nginx/conf/scgi_params.default
/mnt/data/nginx/conf/uwsgi_params
/mnt/data/nginx/conf/uwsgi_params.default
/mnt/data/nginx/conf/win-utf

yum 安装的 Nginx 在下面文件夹内

/etc/nginx/fastcgi_params
/etc/nginx/scgi_params
/etc/nginx/uwsgi_params
/etc/nginx/koi-utf
/etc/nginx/win-utf
/etc/nginx/koi-win

2.6 文件管关联程序, MIME 相关配置文件:

/mnt/data/nginx/conf/mime.types
/mnt/data/nginx/conf/mime.types.default

yum 安装的 Nginx 在 /etc/nginx/mime.types.

MIME 为多用途互联网邮件扩展类型, 是设定某种扩展名的文件用一种应用程序来打开的方式类型. 在 HTML, json, IIS 等中都有涉及.

2.7 第三方模块:

/mnt/data/nginx-1.16.1/objs/src/event/modules
/mnt/data/nginx-1.16.1/objs/src/http/modules
/mnt/data/nginx-1.16.1/auto/modules
/mnt/data/nginx-1.16.1/src/event/modules
/mnt/data/nginx-1.16.1/src/http/modules

yum 安装的 Nginx 在 /etc/nginx/modules.

2.8 主程序文件: /mnt/data/nginx/sbin/nginx

yum 安装的 Nginx 在 /usr/sbin/nginx.

nginx 启动过程, yum 安装的 Nginx 会自动创建 /etc/sysconfig/nginx. 手动安装没有该文件,
手动需要指定 /mnt/data/nginx/sbin/nginx 文件启动.

手动也可以创建 /etc/sysconfig/nginx, 不建议. 可以使用多种环境变量的方法将 /mnt/data/nginx/sbin/nginx 改为使用 nginx 就可以运行命令的.

2.9 页面文件夹: /mnt/data/nginx/html

yum 安装的 Nginx 在 /usr/share/nginx/html.

默认状态下 /mnt/data/nginx/html/index.html 是 nginx 访问的主页面.

2.10 日志文件夹: /mnt/data/nginx/logs

yum 安装的 Nginx 在 /var/log/nginx.