nginx的相关配置(日志格式 并发数量)

本文详细讲解了如何在LNMP环境中配置Nginx,涉及日志格式设置、access_log启用、路径设定,并特别关注了server级别的日志配置。实例演示了CMS.cn配置,包括错误日志和访问日志的设置。
摘要由CSDN通过智能技术生成
  • 本文是以lnmp环境为例进行演示
    先来看nginx.conf文件
  • 配置日志要注意以下几点
    1.配置日志格式
    2.开启access_log
    3.在server里面配置日志路径
    详细文章参考
ser  www www;

#进程数 可以自定义
worker_processes auto;
worker_cpu_affinity auto;

error_log  /home/wwwlogs/nginx_error.log ;

pid        /usr/local/nginx/logs/nginx.pid;

#指定进程可以打开的最大描述符:数目
#工作模式与连接数上限
#这个指令是指当一个nginx进程打开的最多文件描述符数目,理论值应该是最多打开文件数(ulimit -n)与nginx进程数相除,但是nginx分配请求并不是那么均匀,所以最好与ulimit -n 的值保持一致。
#现在在linux 2.6内核下开启文件打开数为65535,worker_rlimit_nofile就相应应该填写65535。
#这是因为nginx调度时分配请求到进程并不是那么的均衡,所以假如填写10240,总并发量达到3-4万时就有进程可能超过10240了,这时会返回502错误。worker_rlimit_nofile 51200;

events
    {
        use epoll;
        #单个进程最大连接数(最大连接数=连接数*进程数)
    #根据硬件调整,和前面工作进程配合起来用,尽量大,但是别把cpu跑到100%就行。每个进程允许的最多连接数,理论上每台nginx服务器的最大连接数为。
  
        worker_connections 51200;
        multi_accept off;
        accept_mutex off;
    }

http
    {


        include       mime.types;
        default_type  application/octet-stream;



# 注意这里配置日志的格式  main stat 代表的是日志格式的名字,和下面server里面的配置有关联
   log_format  main  '$remote_addr $http_host - $remote_user [$time_local] "$request" '
                   '$status $body_bytes_sent $request_body "$http_referer" '
                    '"$http_user_agent" "$http_x_forwarded_for"'
                    '"$request_time"';

    log_format  stat  '$remote_addr    $time_local    $request    $status    $body_bytes_sent    $http_referer    $http_user_agent    $http_x_forwarded_for    $http_cdn_forwarded_for    $remote_addr';


        server_names_hash_bucket_size 128;
        client_header_buffer_size 32k;
        large_client_header_buffers 4 32k;
        client_max_body_size 50m;

        sendfile on;
        sendfile_max_chunk 512k;
        tcp_nopush on;

        keepalive_timeout 60;

        tcp_nodelay on;

        fastcgi_connect_timeout 300;
        fastcgi_send_timeout 300;
        fastcgi_read_timeout 300;
        fastcgi_buffer_size 64k;
        fastcgi_buffers 4 64k;
        fastcgi_busy_buffers_size 128k;
        fastcgi_temp_file_write_size 256k;

        gzip on;
        gzip_min_length  1k;
        gzip_buffers     4 16k;
        gzip_http_version 1.1;
        gzip_comp_level 2;
        gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/xml+rss;
        gzip_vary on;
        gzip_proxied   expired no-cache no-store private auth;
        gzip_disable   "MSIE [1-6]\.";

        #limit_conn_zone $binary_remote_addr zone=perip:10m;
        ##If enable limit_conn_zone,add "limit_conn perip 10;" to server section.

        server_tokens off;

server
    {
        listen 80 default_server reuseport;
        #listen [::]:80 default_server ipv6only=on;
        server_name _;
        index index.html index.htm index.php;
        root  /home/wwwroot/default;

        #error_page   404   /404.html;

        # Deny access to PHP files in specific directory
        #location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }

        include enable-php.conf;

        location /nginx_status
        {
            stub_status on;
            access_log   off;
        }

        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            expires      30d;
        }

        location ~ .*\.(js|css)?$
        {
            expires      12h;
        }

        location ~ /.well-known {
            allow all;
        }

        location ~ /\.
        {
            deny all;
        }

        access_log  /home/wwwlogs/access.log;
    }
include vhost/*.conf;
}
  • 在具体项目里面 配置cms.cn.conf
server
    {
        listen 80;
        #listen [::]:80;
        server_name cms.cn ;
#siyucms
        index index.html index.htm index.php default.html default.htm default.php;
        root  /home/wwwroot/site_cms/public;

        include rewrite/none.conf;
        #error_page   404   /404.html;

        # Deny access to PHP files in specific directory
        #location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }
#开启日志 
error_log  /home/wwwlogs/cms_error.log ;
# 这里开启日志记录 使用的格式是 main ,注意是写在server里面的,外面无效
access_log  /home/wwwlogs/cms_access.log main;
        include enable-php.conf;
location / {
   if (!-e $request_filename) {
                rewrite  ^(.*)$  /index.php?s=/$1  last;
    }
}


        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            expires      30d;
        }

        location ~ .*\.(js|css)?$
        {
            expires      12h;
        }

        location ~ /.well-known {
            allow all;
        }

        location ~ /\.
        {
            deny all;
        }

        access_log on;
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老A技术联盟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值