nginx 目录结构服务配置文件

第三章 nginx程序服务目录结构

/etc/logrotate.d/nginx 利用logrotate实现日志文件自动切割
/etc/nginx/nginx.conf 主配置文件
/etc/nginx/conf.d/default.conf扩展配置文件
/etc/nginx/fastcgi_params 定义nginx接口方式
接口方式 fastcgi 对应(php)
接口方式 uwsgi_params 对应(python)

usr/sbin/nginx 程序命令文件
检查配置文件语法是否正确 nginx -t
控制服务运行状态 nginx(启动服务) nginx -s stop/reload
查看软件安装配置信息 nginx -V
usr/share/nginx/ 站点目录将网站页面所有元素资源进行整合,分类规范管理
/var/log/nginx/ 保存程序日志文件信息 (access.log error.log)
/var/cache/nginx 缓存功能存放缓存目录 (查看数据信息是否真正缓存了)

nginx 配置文件

nginx配置文件分为主配置文件和扩展配置文件
主配置文件配置各项具体参数
主配置文件: nginx.conf
配置文件路径: /etc/nginx/nginx.conf
只看有内容行: grep -v "^$" /etc/nginx/nginx.conf

user  nginx;                                  指定worker进程管理用户(建议指定为虚拟用户)
worker_processes  4;                          指定worker进程数量  进程数越多并发处理能力越强
                                              建议设置数值=CPU核数 在高并发下建议临时设置数值=2*CPU核数
error_log  /var/log/nginx/error.log warn;       配置错误日志保存路径
pid        /var/run/nginx.pid;                 配置程序pid文件保存路径
以上信息: nginx主区域配置信息
以下信息: nginx事件区域配置信息

events {                            定义worker区域
worker_connections  1024;         定义一个worker进程最大连接数
(建议小于系统打开文件连接数) ulimit -a查看系统打开文件最大数值
}
定义HTTP服务区域
http {                                         
    include       /etc/nginx/mime.types;         --- 包含其他配置文件信息 (定义能够处理的媒体资源类型)
    default_type  application/octet-stream;       --- 资源信息没有扩展名,默认识别成什么资源类型
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '    设置日志信息格式
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    access_log  /var/log/nginx/access.log  main;                                  配置日志保存路径
    sendfile        on;                             
    #tcp_nopush     on;
    keepalive_timeout  65;                         是否开启长链接功能(数值为0 就是开启短链接功能)
    #gzip  on;                                     是否压缩传输数据
    include /etc/nginx/conf.d/*.conf;                加载扩展配置文件路径 
}

扩展配置文件基础配置

扩展文件配置信息:
/etc/nginx/conf.d/default.conf

[root@web02 conf.d]# cat default.conf
server {
    listen       80;                                 --- 指定服务监听端口号 默认是80
    server_name  www.xxx.com;                    --- 配置网站域名信息
    location / {
        root   /html/;                               --- 站点目录信息
        index  index.html index.html;                   --- 指定首页文件  首页文件不存在,访问网站会报403错误
        error_page   404 500 502 503 504  /xxx.jpg;    --- 优雅显示错误页面配置
    }
}

补充说明:

  1. nginx进程信息
    master进程: 控制nginx服务运行状态
    worker进程: 处理用户访问网站请求

  2. nginx配置文件语法规范
    a 指令信息结尾必须有分号
    b 括号信息必须成对出现

  3. nginx配置区域说明:
    a) 主区域配置 配置错误日志 进程信息 worker进程用户
    b) 事件区域配置 配置worker进程连接数信息
    c) HTTP 区域 配置功能参数 优化有关系
    d) server 区域 配置网站功能参数
    e) if 区域 用于匹配url区域
    f) locatio 区域 用于匹配uri,定位到不同的处理方式上.( location 的匹配顺序是“先匹配正则,再匹配普通”)

location匹配

location ~* /js/.*/\.js

  1. 以 = 开头,表示精确匹配;如只匹配根目录结尾的请求,后面不能带任何字符串。

  2. 以^~ 开头,表示uri以某个常规字符串开头,不是正则匹配

  3. 以~ 开头,表示区分大小写的正则匹配;

  4. 以~* 开头,表示不区分大小写的正则匹配

  5. 以/ 开头,通用匹配, 如果没有其它匹配,任何请求都会匹配到

if格式匹配内容 匹配变量 等

多用于匹配url
匹配 uri内容带有.jpg的访问进行跳转

    if ( $requset_uri ~* “.(jpg|xxx)$”) {
        xxx内容
}

系统打开文件数

程序运行起来,程序会打开相应文件 每打开一个便计做一个文件数
ulimit -a 查看最大文件数
如果打开系统文件数不足 会导致有些服务不能够运行
修改文件打开数最大值
echo '* - nofile 65535' >>/etc/security/limits.conf

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • I/O模型: 阻塞型、非阻塞型、复用型、信号驱动型、异步 同步/异步:关注消息通知机制 消息通知:同步:等待对方返...
    Net夜风阅读 2,038评论 0 1
  • nginx在工作中已经有好几个环境在使用了,每次都是重新去网上扒博客,各种编译配置,今天自己也整理一份安装文档和n...
    AndyChin阅读 2,329评论 0 4
  • Nginx简介 解决基于进程模型产生的C10K问题,请求时即使无状态连接如web服务都无法达到并发响应量级一万的现...
    魏镇坪阅读 2,090评论 0 9
  • 1.简介:  Nginx:engine X ,2002年,开源,商业版 http协议:web服务器(类似于ht...
    尛尛大尹阅读 1,896评论 0 3
  • 一、nginx程序目录结构信息 /etc/logrotate.d/nginx (因如果将所有日志统一记录,会导致...
    荆俊玮阅读 248评论 0 0