• nginx多站点配置


    主配置文件 nginx.conf:

    user www;
    worker_processes 2;
    error_log /var/log/nginx/error.log;
    pid /var/run/nginx.pid;
    
    # Load dynamic modules. See /usr/share/nginx/README.dynamic.
    include /usr/share/nginx/modules/*.conf;
    
    events {
        worker_connections  102400;
    }
    
    
    http {
        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  /var/log/nginx/access.log  main;
    
        sendfile            on;
        tcp_nopush          on;
        tcp_nodelay         on;
        keepalive_timeout   65;
        types_hash_max_size 2048;
    
        include             /etc/nginx/mime.types;
        default_type        application/octet-stream;
    
        # Load modular configuration files from the /etc/nginx/conf.d directory.
        # See http://nginx.org/en/docs/ngx_core_module.html#include
        # for more information.
        include /etc/nginx/conf.d/*.conf;
    }

    站点1配置文件:one.conf

    server {
        listen       80;
        server_name  www.xx.cn;
    
        #charset koi8-r;
    
        access_log  /data/logs/wwwxx.access.log  main;
    
        location / {
            root   /data/wwwxx;
            index  index.html index.htm index.php;
        }
    
        error_page  404              /404.html;
        location = /404.html {
            root   /usr/share/nginx/html;
        }
    
       
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/share/nginx/html;
        }
    
        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ .php$ {
        #    proxy_pass   http://127.0.0.1;
        #}
    
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        
        
        if (!-e $request_filename) {
            #rewrite ^/(.*) /index.php?$1 last;
    
        rewrite ^(?!/favicon)(?!/data)(?!/static)(?!/MP)(.*)$ /index.php?$1 last;
    
            break;
        }
    
    
        location ~ .php$ {
            root           /data/wwwxx;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
        
    
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /.ht {
        #    deny  all;
        #}
    }

    https-ssl带证书配置站点 web.conf

    server {
        listen       443;
        server_name  www.xx.cn ;
    
        if ($host = 'xx.cn'){
            rewrite ^/(.*)$ https://www.xx.cn/$1 permanent;
        }
    
        ssl on;
        ssl_certificate /data/ssl/xx.cn.crt;
        ssl_certificate_key /data/ssl/xx.cn.key;
    
        #charset koi8-r;
    
        access_log  /data/logs/wwwxx.access.log  main;
    
    
            root   /data/wweb;
            index  index.html index.htm index.php;
    
    
        error_page  404              /404.html;
        location = /404.html {
            root   /usr/share/nginx/html;
        }
    
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/share/nginx/html;
        }
    
        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ .php$ {
        #    proxy_pass   http://127.0.0.1;
        #}
    
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location / {
        if (!-e $request_filename) {
            #rewrite ^/(.*) /index.php?$1 last;
    
          rewrite ^(?!/pc)(?!/static)(?!/robots)(.*)$ /index.php?$1 last;
    
            break;
        }
      }
    
        location ~ .php$ {
            root           /data/wweb;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /.ht {
        #    deny  all;
        #}
    }

    反向代理站点配置 two.conf

    upstream two_web{
        server 127.0.0.1:8088 weight=1;
        server 127.0.0.1:8081 weight=2;
    }
    
    
    server {
        listen       80;
        server_name  www.xx.com;
    
        #charset koi8-r;
    
        access_log  /data/logs/xx.access.log  main;
    
        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;
    
        location / {
            
            index  index.htm index.html;
    
            proxy_pass   http://two_web;    #在这里设置一个代理,和upstream的名字一样
            #以下是一些反向代理的配置可删除
            proxy_redirect             off; 
            #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
            proxy_set_header           Host $host; 
            proxy_set_header           X-Real-IP $remote_addr; 
            proxy_set_header           X-Forwarded-For $proxy_add_x_forwarded_for; 
            client_max_body_size       10m; #允许客户端请求的最大单文件字节数
            client_body_buffer_size    128k; #缓冲区代理缓冲用户端请求的最大字节数
            proxy_connect_timeout      300; #nginx跟后端服务器连接超时时间(代理连接超时)
            proxy_send_timeout         300; #后端服务器数据回传时间(代理发送超时)
            proxy_read_timeout         300; #连接成功后,后端服务器响应时间(代理接收超时)
            proxy_buffer_size          4k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小
            proxy_buffers              4 32k; #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
            proxy_busy_buffers_size    64k; #高负荷下缓冲大小(proxy_buffers*2)
            proxy_temp_file_write_size 64k;
            
    
        }
    
        error_page  404              /404.html;
        location = /404.html {
            root   /usr/share/nginx/html;
        }
    
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/share/nginx/html;
        }
    
      
    }

    静态资源访问配置 image.conf

    server {
        listen       80;
        server_name  img002.xx.com;
    
        #charset koi8-r;
    
        #access_log  logs/host.access.log  main;
    
    
        location / {
            root   /data/www/resource/;
            index  index.html index.htm;
        }
    
        error_page  404              /404.html;
        location = /404.html {
            root   /usr/share/nginx/html;
        }
    
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/share/nginx/html;
        }
    
     
    }
  • 相关阅读:
    NLP Best Practices
    Bert模型精简方法
    delphi:对象的创建(create)与释放(free/destory)(转载)
    delphi:Format格式化函数(转载)
    delphi:destroy, free, freeAndNil, release用法和区别(转载)
    delphi:function ParamStr(i:LongInt):string
    jquery:上传文件
    bootstrapValidator中用ajax校验
    jquery中实时监控文本框的变化
    jquery判断checkbox是否选中
  • 原文地址:https://www.cnblogs.com/beyang/p/7182905.html
Copyright © 2020-2023  润新知