nginx的基础配置

基础配置

image.png

user

配置worker进程运行用户,nobody也是一个Linux用户,一般用于启动程序,没有密码

  1. user nobody

worker_processes

配置工作进程数目,根据硬件调整,通常等于cpu核心数量或者两倍于cpu核心数量

  1. worker_processes 1

error_log

配置全局错误日志及类型,【debug | info | notice | warn | error | crit】,默认是error

  1. error_log logs/error.log

pid

配置进程pid文件

  1. pid logs/nginx.pid

工作模式和连接数

image.png

worker_connections

配置每个worker进程的连接数上线

nginx支持的总连接数就等于worker_processes*worker_connections*
上限:65535 (256
256)

  1. worker_connections

HTTP配置

配置http服务器,利用它的反向代理功能提供负载均衡支持

基础HTTP配置

include

配置nginx支持哪些多媒体类型,可以在conf/mime.types查看支持超哪些多媒体类型

  1. include mime.types

default_type

默认文件类型 流类型,可以理解为支持任意类型

  1. default_type application/octet-stream;

log_format

配置日志格式

  1. #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
  2. # '$status $body_bytes_sent "$http_referer" '
  3. # '"$http_user_agent" "$http_x_forwarded_for"';

access_log

访问日志,配置access.log日志及存放路径,并使用上面定义的main日志格式

  1. #access_log logs/access.log main;

sendfile

开启高效文件传输模式

  1. sendfile on;

tcp_nopush

防止网络阻塞

  1. #tcp_nopush on;

keepalive_timeout

长连接超时时间,单位是秒

  1. #keepalive_timeout 0;
  2. keepalive_timeout 65;

gzip

开启gzip压缩输出

  1. #gzip on;

虚拟主机配置,server

可以有多个server,但是每个server的监听端口号listen和配置服务名server_name不能完全一样

charset

配置字符集

  1. #charset koi8-r;

access_log

配置本虚拟主机的访问日志

  1. #access_log logs/host.access.log main;

location

请求的拦截

默认的匹配斜杠/的请求,当访问路径中有斜杠/,会被该location匹配到并进行处理

  1. location / {
  2. # root是配置服务器的默认网站根目录位置,默认为nginx安装主目录下的html目录
  3. root html;
  4. # 配置首页文件的名称
  5. index index.html index.htm;
  6. }