当前位置 主页 > 服务器问题 > nginx问题汇总 >

Nginx的完整配置详解及实例代码

栏目:nginx问题汇总 时间:2018-11-05 16:12

这篇文章主要介绍了Nginx的完整配置详解及实例代码的相关资料,需要的朋友可以参考下

Nginx的完整配置详解

           最近公司新项目,由于自己是小白,跟着项目经理对Nginx进行配置,在网上找到一篇相关资料,觉得不错,并可以完成配置,这里记录下,

实例代码:

#运行用户user nobody;#启动进程,通常设置成和cpu的数量相等worker_processes 1;#全局错误日志及PID文件#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid    logs/nginx.pid;#工作模式及连接数上限events {  #epoll是多路复用IO(I/O Multiplexing)中的一种方式,  #仅用于linux2.6以上内核,可以大大提高nginx的性能  use  epoll;   #单个后台worker process进程的最大并发链接数    worker_connections 1024;  # 并发总数是 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 {  #设定mime类型,类型由mime.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;  #开启gzip压缩  gzip on;  gzip_disable "MSIE [1-6].";  #设定请求缓冲  client_header_buffer_size  128k;  large_client_header_buffers 4 128k;  #设定虚拟主机配置  server {    #侦听80端口    listen  80;    #定义使用 www.nginx.cn访问    server_name www.nginx.cn;    #定义服务器的默认网站根目录位置    root html;    #设定本虚拟主机的访问日志    access_log logs/nginx.access.log main;    #默认请求    location / {      #定义首页索引文件的名称      index index.php index.html index.htm;      }    # 定义错误提示页面    error_page  500 502 503 504 /50x.html;    location = /50x.html {    }    #静态文件,nginx自己处理    location ~ ^/(images|javascript|js|css|flash|media|static)/ {      #过期30天,静态文件不怎么更新,过期可以设大一点,      #如果频繁更新,则可以设置得小一点。      expires 30d;    }    #PHP 脚本请求全部转发到 FastCGI处理. 使用FastCGI默认配置.    location ~ .php$ {      fastcgi_pass 127.0.0.1:9000;      fastcgi_index index.php;      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;      include fastcgi_params;    }    #禁止访问 .htxxx 文件      location ~ /.ht {      deny all;    }  }}



缩小 缩小 缩小 缩小
IIS7整站下载工具 IIS7批量查询排名 IIS7远程桌面连接工具 iis7-iis网站批量管理 iis7批量替换工具 IIS7服务器专用下载工具 IIS7日志分析工具 IIS7批量PING,服务器批量添加网卡IP小工具 IIS7远程同步备份工具
IIS7网站监控 站群批量SEO查询 批量获取排名域名 批量关键词排名查询 模拟各种蜘蛛 批量友情链接监测 批量检测死链 搜索引擎大全 批量查询外链
批量查询网站标题 批量查询KeyWords 批量查询描述 批量查询网站IP 批量百度收录查询 批量查询百度日收录 批量查询百度周收录 批量查询百度月收录 批量查询360总收录 批量查询360日收录 批量查询网站年龄 批量查询360PC权重 批量查询爱站移动权重 批量查询站长移动权重 批量查询360移动权重 批量查询神马权重 批量查询谷歌PR 批量查询搜狗PR 批量查询百度反链 批量查询爱站首页反链 批量查询爱站内页反链 批量查询百度快照 批量查询搜狗快照 批量icp备案查询 批量网站ip地址查询 批量查询导出链接 批量查询百度V认证 批量查询百度安全 批量查询站长PC权重 批量查询爱站PC权重 批量查询搜狗总收录 站长资源大全 IIS7-cms大全 IIS7站群大全 IIS7虚拟空间大全 IIS7服务器大全 IIS7-VPS大全 服务器代购 站群专用 美国站群服务器 香港站群服务器 特供站群vps 亚洲服务器 菲律宾HS 韩国首尔 香港PCCW 香港沙田电信 香港PowerLine 日本多机房 新加坡多机房 韩国大带宽 香港新世界 香港Pangnet 台湾 美国服务器 加州RS 美国vps母鸡租用 洛杉矶MC 洛杉矶C3 特价促销区 洛杉矶NS 洛杉矶Cera高防 洛杉矶HS高防 SK高防 洛杉矶WX 加州RH 芝加哥AT VPS云主机 香港沙田电信 韩国首尔 香港Pangnet 新加坡SG 香港PL 洛杉矶SK 抗攻击 洛杉矶C3 日本大阪 洛杉矶Cera 抗攻击 洛杉矶MC 纽约 SSD 抗攻击 大容量备份VPS 国庆大促 俄罗斯