NGINX 配置demo

作者: 清醒的cola | 来源:发表于2016-12-28 00:06 被阅读441次

开始一个demo

user  nobody;
worker_processes  8;
worker_rlimit_nofile 65535;
error_log  logs/error.log;
pid        logs/nginx.pid;

events {
    use epoll;
    worker_connections 10240;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    log_format custom   '$remote_addr - $remote_user [$time_local]  '
                    '"$request" $status $body_bytes_sent '
                    '"$http_referer" "$http_user_agent" $request_time';
    
    sendfile        on;
    tcp_nopush     on;
    keepalive_timeout  0;
    
    gzip  on;
    gzip_min_length 1100;
    gzip_buffers  4 32k;
    gzip_comp_level 9;
    gzip_http_version 1.1;
    gzip_types text/plain application/x-javascript text/xml text/css;

    upstream demon {
        server  127.0.0.1:3008;
    }

    server {
        listen       80;
        server_name  localhost;

        location /favicon.ico {
            root /srv/demon.nginx.org;
            expires 30d;
            access_log off;
        }

        location /static/ {
            alias /srv/demon.nginx.org/static/;
            expires 30d;
            access_log off;
        }

        location ~* \.(gif|jpg|png)$ { 
            root /srv/demon.nginx.org/images;
        }

        location ~ .*\.(js|css)?$ {
             deny 127.0.0.1;  #拒绝的ip
             allow 127.0.0.2; #允许的ip
             expires 12h;
        }

        location / {
            uwsgi_pass demon;
            include uwsgi_params;
        }

        access_log logs/access_nginx.org.log;
        error_log logs/error_nginx.org.log;
    }
}

一共分为几部分:

  1. 全局 设置 user pid
  2. events 设置网络连接相关
  3. http 包含多个 server
  4. server 设置虚拟主机
  5. location 设置路由

正则规则:

  • 完全匹配 =
  • 大小写敏感 ~
  • 忽略大小写 ~*
  • 前半部分匹配 ^~

特别注意 alias 和 root 的区别 root 指的是根 alias 指的别名

相关文章

网友评论

    本文标题:NGINX 配置demo

    本文链接:https://www.haomeiwen.com/subject/wcoevttx.html