• nginx的使用配置


    nginx为反向代理服务器,可以反向代理不同域名转向不同的具体服务器。可以用于负载压力或是同一台机器使用不同域名进行访问。

    以下片段是服务器配置:

      1 #user cmcc;
      2 
      3 worker_processes 16;
      4 #worker_cpu_affinity 00000001 00000010 00000100 00001000;
      5 worker_cpu_affinity 0000000000000001 0000000000000010 0000000000000100 0000000000001000 0000000000010000 0000000000100000 0000000001000000 0000000010000000 0000000100000000 0000001000000000 0000010000000000 0000100000000000 0001000000000000 00100000000000000000 0100000000000000 1000000000000000;
      6 #pid /var/run/nginx.pid;
      7 #error_log /var/log/nginx/error_log error;
      8 worker_rlimit_nofile 655350;
      9 events {
     10     use epoll;
     11     worker_connections 655350;
     12 }
     13 http {    
     14     include /etc/nginx/mime.types;
     15     default_type application/octet-stream;
     16     access_log /tmp/access.log;
     17     error_log /tmp/error.log;
     18     server_names_hash_bucket_size 128;
     19     client_header_buffer_size 4k;
     20     large_client_header_buffers 4 4k;
     21     client_max_body_size 10m;
     22     open_file_cache max=655350 inactive=20s;
     23     open_file_cache_min_uses 1;
     24     open_file_cache_valid 30s;
     25     sendfile on;
     26     gzip on;
     27     gzip_min_length 1k;
     28     gzip_buffers 4 16k;
     29     gzip_http_version 1.0;
     30     gzip_comp_level 2;
     31     gzip_types text/plain application/x-javascript text/cssapplication/xml;
     32     gzip_vary on;
     33 
     34     include /etc/nginx/conf.d/*.conf;
     35     include /etc/nginx/sites-enabled/*;
     36 
     37 #proxy server
     38     upstream webvoc.com{
     39         server 115.28.213.130:8080 weight=2;
     40     }
     41     upstream www.webvoc.com{
     42         server 115.28.213.130:8080 weight=2;
     43     }
     44     #upstream tomcat_stat {
     45     #    server 111.13.47.186:8080 weight=3;
     46     #}
     47 
     48 #visual master_server
     49 server {
     50         listen       8011;
     51         server_name  localhost;
     52 
     53         #charset koi8-r;
     54 
     55         #access_log  logs/host.access.log  main;
     56 
     57         location / {
     58             root   /usr/local/www;
     59             index  index.php;
     60         }
     61         
     62         location /svn { 
     63             proxy_set_header Host $host; 
     64             proxy_set_header X-Real-IP $remote_addr; 
     65             proxy_set_header X-Forwarded-Proto https; 
     66             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
     67             proxy_pass http://127.0.0.1:8099/svn/; 
     68         } 
     69         #error_page  404              /404.html;
     70 
     71         # redirect server error pages to the static page /50x.html
     72         #
     73         error_page   500 502 503 504  /50x.html;
     74         location = /50x.html {
     75             root   /usr/local/www;
     76         }
     77 
     78         # proxy the PHP scripts to Apache listening on 127.0.0.1:80
     79         #
     80         #location ~ .php$ {
     81         #    proxy_pass   http://127.0.0.1;
     82         #}
     83 
     84         # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
     85         #
     86         location ~ .php$ {
     87             root           /usr/local/www;
     88             fastcgi_pass   127.0.0.1:9000;
     89             fastcgi_index  index.php;
     90             fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
     91             include        fastcgi_params;
     92         }
     93 
     94         # deny access to .htaccess files, if Apache's document root
     95         # concurs with nginx's one
     96         #
     97         #location ~ /.ht {
     98         #    deny  all;
     99         #}
    100     }
    101     server{
    102         listen 80;
    103         server_name webvoc.com;
    104         error_log /tmp/vm_err.log;
    105         access_log /tmp/vm_access.log;
    106         location /{
    107             proxy_pass      http://webvoc.com;
    108             client_max_body_size    10m;
    109             client_body_buffer_size 128k;
    110             proxy_read_timeout 120;
    111             proxy_connect_timeout 120;
    112             proxy_buffer_size 32k;
    113             proxy_buffers 4 64k;
    114             proxy_busy_buffers_size 128k;
    115             proxy_headers_hash_bucket_size 128;
    116             proxy_temp_file_write_size 128k;
    117             proxy_set_header X-Real-IP $remote_addr;
    118             proxy_set_header X-Forwarded-For $remote_addr;
    119             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    120         }
    121         location ~ .(qqLogin|registerQQ|registerWeiBo).action$ {
    122             proxy_pass http://webvoc.com;   
    123         }
    124 
    125         location ~ .(oauth2_qq).jsp$ {
    126             proxy_pass   http://webvoc.com;
    127         }    
    128 
    129         error_page   500 502 503 504  /50x.html;
    130             location = /50x.html 
    131                 {
    132                         root   /usr/share/nginx/www;
    133                 }
    134 
    135         #location /NginxStatus {
    136 
    137         #    stub_status on;
    138         #    access_log off;
    139         #    auth_basic "NginxStatus";
    140         #}
    141 
    142         location ~* .(gif|jpg|jpeg|questionStyle|kindeditor|fileupload)$ {
    143     
    144                  proxy_pass      http://webvoc.com;
    145                 }    
    146         
    147     }    
    148     server{
    149         listen 80;
    150         server_name www.webvoc.com;
    151         error_log /tmp/vm_err.log;
    152         access_log /tmp/vm_access.log;
    153         location /{
    154             proxy_pass      http://www.webvoc.com;
    155             client_max_body_size    10m;
    156             client_body_buffer_size 128k;
    157             proxy_read_timeout 120;
    158             proxy_connect_timeout 120;
    159             proxy_buffer_size 32k;
    160             proxy_buffers 4 64k;
    161             proxy_busy_buffers_size 128k;
    162             proxy_headers_hash_bucket_size 128;
    163             proxy_temp_file_write_size 128k;
    164             proxy_set_header X-Real-IP $remote_addr;
    165             proxy_set_header X-Forwarded-For $remote_addr;
    166             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    167         }
    168         location ~ .(qqLogin|registerQQ|registerWeiBo).action$ {
    169             proxy_pass http://webvoc.com;   
    170         }
    171 
    172         location ~ .(oauth2_qq).jsp$ {
    173             proxy_pass   http://www.webvoc.com;
    174         }    
    175 
    176         error_page   500 502 503 504  /50x.html;
    177             location = /50x.html 
    178                 {
    179                         root   /usr/share/nginx/www;
    180                 }
    181 
    182         #location /NginxStatus {
    183 
    184         #    stub_status on;
    185         #    access_log off;
    186         #    auth_basic "NginxStatus";
    187         #}
    188 
    189         location ~* .(gif|jpg|jpeg|questionStyle|kindeditor|fileupload)$ {
    190     
    191                  proxy_pass      http://www.webvoc.com;
    192                 }    
    193         
    194     }    
    195 }

    #proxy server 在这里配置一个代理名称,最重要的是server指向的地址。

    如下:

    upstream webvoc.com{
      server 115.28.213.130:8080 weight=2;
     }

    名称为webvoc.com的域名指向了115.28.213.130:8080的实际地址。

    weight=2向的反向代理权重,当多个负载服务器工作时,可以加大转向某个服务器的机率。

    upstream www.webvoc.com{
      server 115.28.213.130:8080 weight=2;
     }

    表明使用www.webvoc.com指向同一个网站。

     1     server{
     2         listen 80;
     3         server_name webvoc.com;
     4         error_log /tmp/vm_err.log;
     5         access_log /tmp/vm_access.log;
     6         location /{
     7             proxy_pass      http://webvoc.com;
     8             client_max_body_size    10m;
     9             client_body_buffer_size 128k;
    10             proxy_read_timeout 120;
    11             proxy_connect_timeout 120;
    12             proxy_buffer_size 32k;
    13             proxy_buffers 4 64k;
    14             proxy_busy_buffers_size 128k;
    15             proxy_headers_hash_bucket_size 128;
    16             proxy_temp_file_write_size 128k;
    17             proxy_set_header X-Real-IP $remote_addr;
    18             proxy_set_header X-Forwarded-For $remote_addr;
    19             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    20         }
    21         location ~ .(qqLogin|registerQQ|registerWeiBo).action$ {
    22             proxy_pass http://webvoc.com;   
    23         }
    24 
    25         location ~ .(oauth2_qq).jsp$ {
    26             proxy_pass   http://webvoc.com;
    27         }    
    28 
    29         error_page   500 502 503 504  /50x.html;
    30             location = /50x.html 
    31                 {
    32                         root   /usr/share/nginx/www;
    33                 }
    34 
    35         #location /NginxStatus {
    36 
    37         #    stub_status on;
    38         #    access_log off;
    39         #    auth_basic "NginxStatus";
    40         #}
    41 
    42         location ~* .(gif|jpg|jpeg|questionStyle|kindeditor|fileupload)$ {
    43     
    44                  proxy_pass      http://webvoc.com;
    45                 }    
    46         
    47     }    

    server:是一个完整的服务器转向规则说明:

     listen:是要侦听的端口号,如果使用域名访问,这里可全部设置为80端口。

    server_name:这个就是上面提到upstream后面的名字。一般情况下和域名相同,但是可以不一致。

    这个nginx配置中,有一个站点为PHP站点,直接使用nginx作解析。配置代码如下:

     1 server {
     2         listen       8011;
     3         server_name  localhost;
     4 
     5         #charset koi8-r;
     6 
     7         #access_log  logs/host.access.log  main;
     8 
     9         location / {
    10             root   /usr/local/www;
    11             index  index.php;
    12         }
    13         
    14         location /svn { 
    15             proxy_set_header Host $host; 
    16             proxy_set_header X-Real-IP $remote_addr; 
    17             proxy_set_header X-Forwarded-Proto https; 
    18             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    19             proxy_pass http://127.0.0.1:8099/svn/; 
    20         } 
    21         #error_page  404              /404.html;
    22 
    23         # redirect server error pages to the static page /50x.html
    24         #
    25         error_page   500 502 503 504  /50x.html;
    26         location = /50x.html {
    27             root   /usr/local/www;
    28         }
    29 
    30         # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    31         #
    32         #location ~ .php$ {
    33         #    proxy_pass   http://127.0.0.1;
    34         #}
    35 
    36         # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    37         #
    38         location ~ .php$ {
    39             root           /usr/local/www;
    40             fastcgi_pass   127.0.0.1:9000;
    41             fastcgi_index  index.php;
    42             fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    43             include        fastcgi_params;
    44         }
    45 
    46         # deny access to .htaccess files, if Apache's document root
    47         # concurs with nginx's one
    48         #
    49         #location ~ /.ht {
    50         #    deny  all;
    51         #}
    52     }
  • 相关阅读:
    qt串口
    视频笔记
    视频笔记3
    视频笔记2
    视频笔记1
    将VariantMap添加到数据库
    QT5.9笔记
    li里面input框贴顶
    html增加空格
    linux图形化界面管理工具宝塔面板
  • 原文地址:https://www.cnblogs.com/cldct/p/3987984.html
Copyright © 2020-2023  润新知