#user nobody;
error_log logs/error.log info;
pid logs/nginx.pid;
1、user nobody: 定义Nginx运行的用户和用户组 2、error_log logs/error.log info: 全局错误日志定义类型,[ debug | info | notice | warn | error | crit ] 3、pid logs/nginx.pid; : 进程pid文件
worker_processes auto;
worker_rlimit_nofile 65535;
1、worker_processes: nginx进程数,建议设置为当前主机的CPU总核心数,或者设置自动配置 auto 2、worker_rlimit_nofile 65535: 一个nginx进程打开的最多文件描述符数目 理论值应该是系统最多打开文件数(系统的值ulimit -n)与nginx进程数相除,但是nginx分配请求并不均匀,所以建议与ulimit -n的值保持一致。 现在在linux 2.6内核下开启文件打开数为65535,worker_rlimit_nofile就相应应该填写65535
#工作模式与连接数上限
events{
use epoll;
worker_connections 65535;
1、 use epoll : 参考事件模型,use [ kqueue | rtsig | epoll | /dev/poll | select | poll ]; epoll模型是Linux 2.6以上版本内核中的高性能网络I/O模型,如果跑在FreeBSD上面,就用kqueue模型。 2、worker_connections 65535 单个进程最大连接数。 最大连接数=连接数*进程数,如果是代理后端服务器,还要再除以2。
}
#http服务器
http {
include mime.types;
default_type application/octet-stream;
1、include mime.types: 文件扩展名与文件类型映射表 2、default_type application/octet-stream; 默认文件类型
#access_log logs/access.log main;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
1、access_log logs/access.log main 设置nginx是否将存储访问日志。关闭这个选项可以让读取磁盘IO操作更快 2、日志格式设定 #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"';
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
1、sendfile on; 开启高效文件传输模式,sendfile指令指定nginx是否调用sendfile函数来输出文件,对于普通应用设为 on。如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络I/O处理速度,降低系统的负载。注意:如果图片显示不正常把这个改成off。 2、tcp_nopush on; 防止网络阻塞 3、keepalive_timeout 65; 连接超时时间,单位秒
#gzip on;
#gzip模块设置 1、gzip on; #开启gzip压缩输出 2、gzip_min_length 1k; #最小压缩文件大小 3、gzip_buffers 4 16k; #压缩缓冲区 4、gzip_http_version 1.0; #压缩版本(默认1.1,前端如果是squid2.5请使用1.0) 5、gzip_comp_level 2; #压缩等级 6、gzip_types text/plain application/x-javascript text/css application/xml; #压缩类型,默认就已经包含textml,所以下面就不用再写了,写上去也不会有问题,但是会有一个warn。 7、gzip_vary on;
#定义虚拟机
server {
listen 80;
server_name localhost;
charset utf-8;
1、listen 80;#监听端口 2、server_name localhost;#定义域名 3、charset utf-8;#字符集
#资源定位
location / {
#定位的根目录
root html;
index index.html;
}
#定义一些404,5xx页面
#error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
#图片缓存时间设置
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)${
expires 10d;
}
#JS和CSS缓存时间设置
location ~ .*.(js|css)?${
expires 1h;
}
}
}
参考资料:
http://www.cnblogs.com/nixi8/p/4871057.html
http://www.chinaz.com/web/2015/0424/401323_2.shtml
http://www.nginx.cn/76.html
http://www.cnblogs.com/xiaogangqq123/archive/2011/03/02/1969006.html
相关推荐
nginx.conf nginx常用配置
**Nginx 1.19.1及常用配置文档详解** Nginx是一款高性能的Web服务器和反向代理服务器,被广泛应用于互联网行业,以其轻量级、高并发处理能力而著称。Nginx 1.19.1是Nginx的最新稳定版本,它在1.19.0的基础上进行了...
Nginx 的常用命令包括检查配置文件、指定其他配置文件、启动 Nginx、停止 Nginx、重启 Nginx 等命令。这些命令可以帮助用户快速启动和管理 Nginx 服务。 九、配置示例 配置示例包括 web 服务器、反向代理、动静...
### Windows 下配置 Nginx 反向代理 Tomcat 在 Windows 环境下配置 Nginx 作为 Tomcat 的反向代理服务器是一项常见的任务,主要用于实现负载均衡、提高安全性及提升性能等目的。本文将从下载 Nginx 开始,详细介绍...
nginx常用bat批处理命令,放在nginx同级目录下使用,可快速的重启、停止、关闭nginx。 quit.bat(退出Nginx) reload.bat(重启Nginx) stop.bat(停止Nginx)
2. 编辑配置文件:修改 `nginx.conf` 或者创建新的虚拟主机配置,定义代理监听端口和上游服务器(即API接口的地址)。 3. 设置代理:在 Nginx 配置中,使用 `proxy_pass` 指令指定上游服务器。 4. 配置代理头:确保...
#### 四、Nginx常用命令 给定的文件片段展示了Nginx的一些常用管理脚本,如`restart.bat`、`start.bat`和`shutdown.bat`,这些脚本在Windows环境中用于启动、停止和重启Nginx服务。具体操作包括: - `tskill nginx...
Nginx的常用配置文件,适合负载均衡设置等
2. 配置文件:主要在`/etc/nginx/nginx.conf`中进行全局配置,站点配置在`/etc/nginx/sites-available/`和`/etc/nginx/sites-enabled/`目录下。 3. 启动和管理:与Apache类似,使用`systemctl start nginx`,`...
本主题将详细探讨Nginx的常用配置文件及其相关知识点。 1. **主配置文件**:`nginx.conf` Nginx的核心配置文件通常位于`/etc/nginx/nginx.conf`(在不同的操作系统上位置可能不同)。它包含了全局块、事件块、http...
### Nginx 详细使用及常用配置学习心得 #### Nginx 简介与特点 Nginx 是一款由俄罗斯程序员伊戈尔·西索夫(Igor Sysoev)开发的高性能 HTTP 服务器、反向代理服务器及邮件代理服务器。它以其出色的性能和稳定性在...
本文将深入探讨Nginx的配置过程,包括基本配置结构、主要配置指令以及常用应用场景。 ### 1. Nginx配置文件结构 Nginx的配置文件通常位于`/etc/nginx/nginx.conf`,它包含多个`server`块,每个`server`块代表一个...
2) Nginx配置 - 1 - a)对c:\nginx\conf\nginx.conf文件进行配置: - 1 - b)常用的 Nginx 参数 - 3 - c)静态文件处理 - 4 - d)动态页面请求处理 - 4 - e)下面为nginx.conf配置实例: - 5 - f)Nginx 启动,停止等命令 ...
2. **fastcgi_read_timeout**: 它定义了Nginx等待FastCGI进程返回响应的超时时间。如果超过这个时间,Nginx会返回504 Gateway Timeout错误。默认值是60秒,但你可以将其设置得更长,比如600秒,以适应需要长时间处理...
Nginx是一款高性能的...本篇文章主要介绍了Nginx的基础知识、配置文件结构、常用指令、模块化特性以及管理命令。通过掌握这些基础知识点,可以帮助用户更好地使用Nginx来搭建高性能的Web服务器和实现复杂的网络应用。
本文将对 Nginx 的安装、配置、日志管理等方面进行详细的介绍。 一、Nginx 的安装 Nginx 的安装可以通过源代码编译的方式进行。首先,需要安装 PCRE 库,因为 Nginx 依赖于 PCRE 库。使用以下命令安装 PCRE 库: ...
Nginx常用配置、负载均衡及优化
在文档"nginx常用命令.doc"中,提到了一些核心的Nginx操作命令,我们将详细探讨这些命令及其用途。 首先,启动Nginx的命令通常是`/usr/local/nginx/sbin/nginx`,这会按照默认配置文件(如`/usr/local/nginx/conf/...
nginx代理功能十分强大,经常用来做反向代理,但有的实际工作环境需要正向代理,经安装发现网上常用的方法有两点问题,1.并不支持https代理,2需要访问的网址一但加上非80端口就会403报错。 后经反复测试,已找到...