nginx配置指南

1 基本配置

# 运行用户
user www www;
# 启动进程,通常设置成和cpu的数量相等
worker_processes 2; #设置值和CPU核心数一致
# 全局错误日志
error_log /usr/local/webserver/nginx/logs/nginx_error.log crit; #日志位置和日志级别
# pid文件
pid /usr/local/webserver/nginx/nginx.pid;
#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 65535;

# 工作模式及连接上限
events
{
  # epoll是多路复用IO中的一种方式,仅适用于linux2.6以上内核,可以大大提高nginx的性能
  use epoll;
  # 单个后台worker process进程的最大并发链接数
  worker_connections 65535;
}

# http模块
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  65;
    #开启gzip压缩
  gzip  on;
 
 #设定虚拟主机配置
 server
  {
    listen 80;#监听端口
    server_name www.litanghui;#域名
    index index.html index.htm index.php; #首页的文件名称
    root /www/litanghui;#服务器的默认网站根目录位置
    #默认请求
    location / {
        #定义首页索引文件的名称
        index index.php index.html index.htm;   

    }
    #静态图像文件
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$
    {
      expires 30d;
    }
    #静态js和css文件
    location ~ .*\.(js|css)?$
    {
      expires 15d;
    }
  }
  #开启https配置
  server
  {

      listen 443;
      server_name xxx.com;

      #开启ssl
      ssl on;
      #证书
      ssl_certificate /xxx/fullchain.pem;
      #key
      ssl_certificate_key /xxx/privkey.pem;
            #协议
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        #套件
            ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    
  }
}

2 基本命令

2.1 重新载入配置文件

nginx -s reload

2.2 重启nginx

nginx -s reopen

2.3 停止nginx

nginx -s stop

其他说明

  1. 在Mac上使用brew安装nginx软件的目录地址为:/usr/local/Cellar/nginx
  2. 在Mac上使用brew安装nginx的配置文件的目录地址为:/usr/local/etc/nginx/nginx.conf
  3. 正向代理:"它代理的是客户端,代客户端发出请求"
    • 访问原来无法访问的资源,如Google
    • 可以做缓存,加速访问资源
    • 对客户端访问授权,上网进行认证
    • 代理可以记录用户访问记录,对外隐藏用户信息
  4. 正向代理:"它代理的是服务端,代服务端接收请求"
    • 保证内网的安全,通常将反向代理作为公网访问地址,web服务器是内网
    • 负载均衡,通过反向代理服务器来优化网站的负载

参考文章

  1. 在mac下安装nginx
  2. nginx相关介绍
  3. 免费域名证书 + nginx开启https访问

推荐阅读更多精彩内容