Nginx的配置文档具体解释。在这儿做个总结,以便以后使用的时间查看。

下面大部分自己整理。部分来自參考

#设置用户
#user  nobody;

#启动进程数(一般和server的CPU同样)
#能够使用 $ cat /proc/cpuinfo 查看内核数
worker_processes  2;

#设置错误文件存放的路径
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#设置pid存放路径(pid是控制系统的关键文件)
#pid        logs/nginx.pid;

#设置最大连接数
events {

#epoll是多路复用IO(I/OMultiplexing)中的一种方式,可是仅用于Linux2.6以上的内存,
#能够大大的提高Nginx的性能
#使用 $ cat /proc/version 查看内核版本号
    use epoll; 
    worker_connections  1024;#单个后台worker process进程的最大并发数
    
# 并发总数是 worker_processes 和 worker_connections 的乘积
    # 即 max_clients = worker_processes * worker_connections
    # 在设置了反向代理的情况下,max_clients = worker_processes * worker_connections / 4  为什么
    # 为什么上面反向代理要除以4。应该说是一个经验值
    # 依据以上条件,正常情况下的Nginx Server能够应付的最大连接数为:4 * 8000 = 32000
    # worker_connections 值的设置跟物理内存大小有关
    # 由于并发受IO约束,max_clients的值须小于系统能够打开的最大文件数
    # 而系统能够打开的最大文件数和内存大小成正比,一般1GB内存的机器上能够打开的文件数大约是10万左右
    # 我们来看看360M内存的VPS能够打开的文件句柄数是多少:
    # $ cat /proc/sys/fs/file-max
    # 输出 34336
    # 32000 < 34336,即并发连接总数小于系统能够打开的文件句柄总数,这样就在操作系统能够承受的范围之内
    # 所以,worker_connections 的值需依据 worker_processes 进程数目和系统能够打开的最大文件总数进行适当地进行设置
    # 使得并发总数小于操作系统能够打开的最大文件数目
    # 事实上质也就是依据主机的物理CPU和内存进行配置
    # 当然,理论上的并发总数可能会和实际有所偏差,由于主机还有其它的工作进程须要消耗系统资源。
    # ulimit -SHn 65535
}

http {
    #设定mine类型,类型有mine.type文件定义
    include       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  logs/access.log  main;

#sendfile 指令指定 nginx 是否调用 sendfile 函数(zero copy 方式)来输出文件,
    #对于普通应用,必须设为 on,
    #假设用来进行下载等应用磁盘IO重负载应用,可设置为 off,
    #以平衡磁盘与网络I/O处理速度,减少系统的uptime.
    sendfile        on;
    #tcp_nopush     on;

#连接超时时间
    #keepalive_timeout  0;
    keepalive_timeout  65;
tcp_nodelay        on;

#开启gizp压缩(用户訪问的是压缩之后的内容,减小压缩开销和提升传输速率)
    #gzip  on;
#配置gzip压缩的下线。假设太小的话会适得其反
#gzip_min_length 1k;
#gzip_buffers 4 16k;
#gzip_http_version 1.0;
#推断client浏览器支持gzip功能
#gzip_vary on;

#设定请求缓冲
    client_header_buffer_size    1k;
    large_client_header_buffers  4 4k;

#设置负载均衡的server列表。该模块为负载均衡时使用
#andy为设置相应server列表upstream名字,改名字能够随便起。可是必须和代理proxy_pass名字同样
upstream andy {
#weigth參数表示权值,权值越高被分配到的几率越大,max_fails最大失败连接数。fail_timeout连接超时时间
server 192.168.1.110:8080 weight=1 max_fails=2 fail_timeout=30s;
server 192.168.1.111:8080 weight=1 max_fails=2 fail_timeout=30s;
server 192.168.1.111:8080 backup; #backup为备份服务器
#ip_hash; ip hash均衡调度算法,默认是轮询方式。假设配置为ip_hash,则不必配置backup和weight
    }

#当然Nginx能够有多个server,代理不同的站点
    server {
   #监听port,Nginx默认监听80port
        listen       80;
#定义訪问代理的网址 www.andy.com
        server_name  www.andy.com;

#设置字符编码
        #charset koi8-r;

#access_log off #关闭日志
#设定本虚拟主机的訪问日志
        #access_log  logs/host.access.log  main; 
         
#当然location /xxx能够出现多个。可是xxx名字不能同样
#代理http://www.andy.com/shop网址
        location /shop {
  
           proxy_pass                  http://192.168.1:8080/shop; #请求转向mysvr 定义的server列表
           proxy_redirect              off;  #是否开启重定向,下面为设置的http表头设置 
           proxy_set_header            Host $host; 
           proxy_set_header            Remote_Addr $remote_addr; 
           proxy_set_header     X-REAL-IP  $remote_addr; 
           proxy_set_header            X-Forwarded-For $proxy_add_x_forwarded_for; 
           
  #下面是一些反向代理的配置可删除
  #同意client请求的最大单个文件字节数
           client_max_body_size        10m;
           #缓冲区代理缓冲用户端请求的最大字节数,能够理解为先保存到本地再传给用户
  client_body_buffer_size        128k;
  #nginx跟后端server连接超时时间(代理连接超时)
           proxy_connect_timeout       90;
  #后端server数据回传时间(代理发送超时)
           proxy_send_timeout          90; 
  #连接成功后,后端server响应时间(代理接收超时)
           proxy_read_timeout          90; 
  #设置代理server(nginx)保存用户头信息的缓冲区大小
           proxy_buffer_size           4k; 
  #proxy_buffers缓冲区。网页平均在32k下面的话
           proxy_buffers               4 32k;
  #高负荷下缓冲大小
           proxy_busy_buffers_size     64k; 
  #proxy缓存暂时文件的大小
           proxy_temp_file_write_size 64k;

}

#默认www.andy.com訪问是的配置。

而且location / 对于server有且仅有一个
        location / {
            root   /usr/andy/www; #定义server的默认站点根文件夹位置
            index  index.html index.htm; #定义首页索引文件的名称
        }

#error_page  404              /404.html;

# 重定向到错误提示页面 /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

# proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}

# deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #

#配置图片缓存30天
location ~.*\.(jpg|png|swf|gif )${
   #过期30天。静态文件不怎么更新,过期能够设大一点,假设频繁更新。则能够设置得小一点。

root /opt/webapp;#缓存位置
  expires 30d;
}

#配置js缓存1小时
location ~.*\.(css|js)?${
expires 1h;
}

#禁止訪问 .htxxx文件
        #location ~ /\.ht {
        #    deny  all;
        #}
    }

}

这儿有篇很好的看參考哦

http://seanlook.com/2015/05/17/nginx-install-and-config/

Nginx配置文档具体解释相关推荐

  1. proftpd mysql_Proftpd mysql认证配置文档

    Proftpd mysql认证配置文档 ver1.0, 2012/09/25 一.下载安装proftp mysql 下载 wget http://cloud.github.com/downloads/ ...

  2. Cisco Firepower FTD HA 配置文档

    请访问原文链接:https://sysin.org/blog/cisco-firepower-ha-config/,查看最新版.原创作品,转载请保留出处. 作者:gc(at)sysin.org,主页: ...

  3. linux下单Nginx部署文档

    Linux下单Nginx部署文档 一.常规步骤 1 安装Nginx集群依赖 yum -y install pcre-devel openssl-devel gcc lrzsz openssh-clie ...

  4. nginx 培训文档

    nginx 培训文档 什么是 nginx Nginx 是高性能的 HTTP 和反向代理的服务器,处理高并发能力是十分强大的,能经受高负载的考验,有报告表明能支持高达 50,000 个并发连接数. 详细 ...

  5. ubuntu nginx html文件,如何在Ubuntu 16.04上更改Nginx Web文档位置

    在本文中,我们将学习如何移动或更改Nginx Web服务器文件文件夹的位置.默认情况下,Nginx Web服务器的默认位置为/ usr / share / nginx / html,位于Linux的默 ...

  6. Java日志框架-Logback手册中文版以及官方配置文档教程

    Logback手册中文版:(链接: https://pan.baidu.com/s/1bpMyasR 密码: 6u5c),虽然版本有点旧,但是大体意思差不多,先用中文版了解个大概,然后一切最新的配置以 ...

  7. nagios配置文档

    nagios配置文档 关于nagios  Nagios是一款用于系统和网络监控的应用程序.它可以在你设定的条件下对主机和服务进行监控,在状态变差和 变好的时候给出告警信息. Nagios最初被设计为在 ...

  8. 我的Debian 8.0 (jessie)配置文档

    2019独角兽企业重金招聘Python工程师标准>>> 我的Debian  8.0 (jessie)配置文档 1,添加软件源  su到root用户 vi  /etc/apt/sou ...

  9. Postfix配置文档

    环境:RedHat Linux+Postfix+Cyrus-sasl+Dovecot+Stunnel 在安装Linux时,如果选择全部安装的话,Postfix与Dovecot以及Stunnel将会自动 ...

最新文章

  1. keras如何解决局部最小问题
  2. C#关于值类型和引用类型的备忘
  3. @Slf4j注解介绍
  4. centos中文乱码修改字符编码使用centos支持中文
  5. 精简JRE第二步 ─ 精简lib目录
  6. 四、规则组织的衍生组织——经向破斜组织数学模型的建立
  7. elasticsearch删除索引_一文带您了解 Elasticsearch 中,如何进行索引管理(图文教程)
  8. Android多媒体学习八:调用Android自带的音频录制程序,实现录制
  9. Linux 循环与变量
  10. window.event 对象详解
  11. Mac 终端以及常用终端命令
  12. LintCode: Combination Sum
  13. Github上十大C#开源项目排行榜
  14. 拼多多快捷回复怎么设置
  15. 如何批量调整图片尺寸?
  16. 看DeepMind如何用Reinforcement learning玩游戏
  17. 服务器主板最多支持内存频率,b360主板支持内存频率多少
  18. python的requests.get()方法获取百度搜索结果页面失败的问题
  19. 苹果服务器维护时间表2019,苹果更新电脑键盘服务维修计划机型 含2019最新款
  20. 注释转换,较详细。新手上路,请多关照

热门文章

  1. Cookie编程入门篇
  2. 共享单车哈罗王炸连出,OFO小心沦为炮灰
  3. 【Android】全角字符半角字符工具类
  4. SpringMVC访问静态资源
  5. 压缩目录Linux常用的几种文件压缩解压方法
  6. Sql查询一个表中除了某个字段以外的所有字段的方法
  7. 再度剖析AD账户新旧密码同时可用的问题
  8. 比特币现金与比特币呈竞争关系 分析表示加密货币之间的竞争不是坏事
  9. Opera 60 正式发布,代号 Reborn 3
  10. echo * 和ls *之间的区别?