Nginx配置文件及解释

# url_hash, ip_hash, fair
upstream cluster {
    server 10.0.0.1 weight=1 max_fails=2 fail_timeout=30s;
    server 10.0.0.2 weight=2 max_fails=3 fail_timeout=30s;
}

server {
    listen       80;
    server_name  localhost;

    root /home/data;

    #charset koi8-r;
    # 存到docker run挂载的目录
    access_log  /var/log/nginx/host.access.log  main;
    error_log /var/log/nginx/host.error.log;

    #以下是一些反向代理的配置,可选。
    client_max_body_size 10m; #允许客户端请求的最大单文件字节数
    client_body_buffer_size 128k; #缓冲区代理缓冲用户端请求的最大字节数,
    proxy_connect_timeout 90; #nginx跟后端服务器连接超时时间(代理连接超时)
    proxy_send_timeout 90; #后端服务器数据回传时间(代理发送超时)
    proxy_read_timeout 90; #连接成功后,后端服务器响应时间(代理接收超时)
    proxy_buffer_size 64k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小
    proxy_buffers 4 32k; #proxy_buffers缓冲区,网页平均在32k以下的设置
    proxy_busy_buffers_size 64k; #高负荷下缓冲大小(proxy_buffers*2)
    proxy_temp_file_write_size 64k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传

    # 对 "/" 启用反向代理
    location / {
        proxy_pass              http://127.0.0.1:5000/;
        proxy_redirect          off;
        proxy_set_header        Host            $host;
        proxy_set_header        X-Real-IP       $remote_addr;

        proxy_next_upstream http_502 http_504 error timeout invalid_header;

        #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    }

    # 移动端重写URL
    #if ($http_user_agent ~* (#mobile|nokia|iphone|ipad|android|samsung|htc|blackberry)) #{
    #    rewrite ^/(.*) ^/m/$1 permanent|last;
    #}

    # 图片缓存时间设置
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires 30d;
    }

    # JS和CSS缓存时间设置
    location ~ .*\.(js|css)?$
    {
        expires 1d;
    }

    #error_page  404              /404.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 ~ \.php$ {
    #    root           html;
    #    fastcgi_pass   127.0.0.1:9000;
    #    fastcgi_index  index.php;
    #    fastcgi_param  SCRIPT_FILENAME  /scripts$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;
    #}
}
Nginx 是一款高性能的 Web 服务器和反向代理服务器,它的配置文件是一个文本文件,通常位于 /etc/nginx 目录下。下面是一个 Nginx 配置文件的示例及其内容解释: ``` # 注释:这里是注释内容 user nginx; # 指定 Nginx 进程的用户 worker_processes auto; # 指定 CPU 核心数 error_log /var/log/nginx/error.log; # 错误日志文件路径 # events 模块用于配置 Nginx 的事件处理机制 events { worker_connections 1024; # 同时接收的最大连接数 } # http 模块用于配置 HTTP 服务器 http { include /etc/nginx/mime.types; # MIME 类型配置文件路径 # server 模块用于配置虚拟主机 server { listen 80; # 监听的端口 server_name example.com; # 域名 location / { root /usr/share/nginx/html; # 静态文件根目录 index index.html; # 默认页面 } location /api/ { proxy_pass http://localhost:8000/; # 反向代理的地址 } } } ``` 在上面的示例中,以 “#” 开头的行为注释,不会被 Nginx 解析。其他行则包含一系列指令,每个指令占一行,用分号(“;”)结尾。这些指令可分为以下几类: - 全局指令:在配置文件的 http 块中设置,适用于整个 Nginx 服务器。 - 事件指令:在配置文件的 events 块中设置,用于控制 Nginx 服务器的事件处理机制。 - HTTP 指令:在配置文件的 http 块中设置,用于配置 HTTP 服务器。 - 服务器块指令:在配置文件的 server 块中设置,用于配置虚拟主机。 以上是 Nginx 配置文件的基本内容和指令分类。对于更详细的指令解释,可以查看 Nginx 官方文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值