美文网首页
nginx-配置说明

nginx-配置说明

作者: G__yuan | 来源:发表于2020-02-15 17:23 被阅读0次

    #user  nobody;     // 以什么的用户权限去运行当前的nginx,默认为nobody,用ps 查看nginx进程时,就可以看到主进程是root,工作进程 nobody   nobody 是个低权限用户

    worker_processes  1;   //工作进程数,配置根据cpu的内核数来进行配置,通常设置成cpu的核数  查看cpu信息:cat /proc/cpuinfo

    #error_log  logs/error.log;

    #nginx的error_log类型如下(从左到右:debug最详细 crit 最少):

    #【 debug | info | notice | warn | error | crit 】

    #error_log  logs/error.log  notice;

    #error_log  logs/error.log  info;

    #pid        logs/nginx.pid;

    #这个参数标示worker进程最多能打开的文件句柄数,基于linux系统ulimit设置

    #查看系统文件句柄数最大值: ulimit -n    查看系统的

    #linux一切皆文件,所有请求过来最终的访问文件,所以该参数设置等同于linux系统ulimitshe设置

    #可以通过linux命令设置,最大的文件句柄数65535

    worker_rlimit_nofile        65535

    events {

        use   epoll  #网络模型高效(相当于建立索引查找结果)nginx配置应该启用该参数,但是仅用于linux2.6以上内核,可以打打提高nginx的性能。

        worker_connections  1024;  //限制指的是单个worker对并发的连接数。 #该参数表示设置一个worker进程最多开启多少线程数   #优化设置应该等同于worker_rlimit_nofile设置值,表明一个线程处理一个http请求,同时可以处理一个文件数,各个模块之间协调合作不等到

    }

    http {

        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        on;  //开启高效文件传输模式,sendfile指令指定nginx是否调用sendfile函数来输出文件,对于普通应用设为on,如果用来进行下载等应用磁盘IO重负载应用,可设置横off,以平衡磁盘于网络IO处理速度,降低系统的负载,注意,如果图片显示不正常把这个改为off。

        #tcp_nopush    on;  # 防止网络阻塞

        #tcp_nodelay    on; # 防止网络阻塞

        #keepalive_timeout  0;

        keepalive_timeout  65; #连接超时时间,单位是秒

        gzip  on;  开启gzip压

        gzip_disable   "MSIE [1-6]\.";    # IE6及以下禁止压缩

        gzip_min_length  1k;     # 最小压缩文件大小

        gzip_buffers   4  16k;     #压缩缓冲区

        gzip_http_version 1.0;  #压缩版本(默认1.1,前段如果是squid2.5请使用1.0)

        gzip_comp_level  2; #压缩等级

        gzip_types  text/plain application/x-javascript text/css application/xml ; # 压缩类型

        gzip_vary on; # 给 CDN和代理服务器使用,针对相同URL,可以根据头信息返回压缩和非压缩副本

        #设定请求缓冲

        client_header_buffer_size  1k;    #上传文件大小限制

        large_client_header_buffers  4 4k;  #设定请求缓存

        server {

            listen      80;

            server_name  localhost;

            #charset koi8-r;

            #access_log  logs/host.access.log  main;

            location / {

                root  html;

                index  index.html index.htm;

            }

            #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  html;

            }

            # proxy the PHP scripts to Apache listening on 127.0.0.1:80

            #

            #location ~ \.php$ {

            #    proxy_pass  http://127.0.0.1;

            #}

            location / {

                root /root;   #定义服务器的默认网站根目录位置

                index index.php index.html index.htm;  #定义首页索引文件的名称

                proxy_pass  http://mysvr ; #请求转向mysvr 定义的服务器列表

                #以下是一些反向代理的配置

                proxy_redirect off;

                #后端的web服务器可以通过X-Forwarded-For获取用户真实IP

                proxy_set_header Host $host;

                proxy_set_header X-Real_IP $remote_addr;

                pro_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #用户真实ip

                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 4k;  # 设置代理服务器(nginx)保存用户头信息的缓冲区大小

                proxy_buffers 4 32k;   # proxy_buffers缓冲区,网页平均在32k以下的话,这样设置

                proxy_busy_buffers_size 64k;  # 高负荷缓冲大小(proxy_buffers * 2)

                proxy_temp_file_write_size 64k;  # 设定缓存文件夹大小,大于这个值,将从upstream 服务器传

            }

            # 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;

            #}

        }

        # another virtual host using mix of IP-, name-, and port-based configuration

        #

        #server {

        #    listen      8000;

        #    listen      somename:8080;

        #    server_name  somename  alias  another.alias;

        #    location / {

        #        root  html;

        #        index  index.html index.htm;

        #    }

        #}

        # HTTPS server

        #

        #server {

        #    listen      443 ssl;

        #    server_name  localhost;

        #    ssl_certificate      cert.pem;

        #    ssl_certificate_key  cert.key;

        #    ssl_session_cache    shared:SSL:1m;

        #    ssl_session_timeout  5m;

        #    ssl_ciphers  HIGH:!aNULL:!MD5;

        #    ssl_prefer_server_ciphers  on;

        #    location / {

        #        root  html;

        #        index  index.html index.htm;

        #    }

        #}

    }

    相关文章

      网友评论

          本文标题:nginx-配置说明

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