nginx 로그 문제 해결 방법 기록

16992 단어 nginxlogLAMP 와 LNMP
nginx 버 전 정 보 는 다음 과 같 습 니 다.
#
nginx -V
nginx version: nginx/1.2.0  최신 안정 버 전
built by gcc 4.4.6 20110731 (Red Hat 4.4.6-3) (GCC) 
TLS SNI support enabled
configure arguments: --prefix=/usr --sbin-path=/usr/sbin --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-ath=/var/log/nginx/ng
inx.pid --lock-path=/var/lock/nginx.lock --user=www --group=www --with-http_ssl_module --with-ttp_flv_module --with-http_mp4_module --with-http_gzip_static_module --with-http_stub_status_module --with-google_perftools_module --http-proxy-temp-path=/var/tmp/nginx/proxy --http-fastcgi-temp-path=/var/tmp/nginx/fcgi --http-client-body-temp-path=/var/tmp/nginx/client --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi
 nginx 설정 은 다음 과 같 습 니 다.
   
   
   
   
  1. user  www; 
  2. worker_processes  2; 
  3. google_perftools_profiles /var/tmp/nginx/tcmalloc/tcmalloc; 
  4. events { 
  5.     use epoll; 
  6.     worker_connections  51000; 
  7. http 
  8.     include       mime.types; 
  9.     default_type  application/octet-stream; 
  10.     keepalive_timeout     65; 
  11.     sendfile              on; 
  12.     tcp_nopush            on; 
  13.     tcp_nodelay           on; 
  14.     client_header_timeout 10; 
  15.     client_body_timeout   10; 
  16.     send_timeout          10; 
  17.     gzip  on; 
  18.     gzip_min_length       1k; 
  19.     gzip_buffers       4 16k; 
  20.     gzip_http_version    1.1; 
  21.     gzip_comp_level        2; 
  22.     gzip_types  text/plain application/x-javascript text/css applocation/xml; 
  23.     server 
  24.         listen       80; 
  25.         server_name  localhost; 
  26.         location / { 
  27.             root   html; 
  28.             index  index.html index.htm; 
  29.          } 
  30.         error_page   500 502 503 504  /50x.html; 
  31.         location = /50x.html { 
  32.             root   html; 
  33.          } 
  34.         location ~ \.php$ { 
  35.             root           html; 
  36.             fastcgi_pass   127.0.0.1:9000; 
  37.             fastcgi_index  index.php; 
  38.             fastcgi_param  SCRIPT_FILENAME  /usr/html$fastcgi_script_name; 
  39.             include        fastcgi_params; 
  40.          }   
  41.     log_format  welog  '$remote_addr - $remote_user [$time_local] "$request" ' 
  42.                '$status $body_bytes_sent "$http_referer" ' 
  43.                 '"$http_user_agent" "$http_x_forwarded_for"'; 
  44.      access_log  /var/log/nginx/access.log  weblog; 
  45.        } 
   
   
   
   
  1. nginx ,
  2. #service nginx restart 
  3. nginx: [warn] the "log_format" directive may be used only on "http" level in /etc/nginx/nginx.conf:97 
  4. nginx: the configuration file /etc/nginx/nginx.conf syntax is ok 
  5. nginx: configuration file /etc/nginx/nginx.conf test is successful 
  6. Stopping nginx:                                            [  OK  ] 
  7. Starting nginx: nginx: [warn] the "log_format" directive may be used only on "http" level in /etc/nginx/nginx.conf:97 
  8.                                                            [  OK  ] 
  9. http ,

 수 정 된 nginx. conf 파일 은 다음 과 같 습 니 다.
   
   
   
   
  1. user  www;  
  2. worker_processes  2;  
  3. google_perftools_profiles /var/tmp/nginx/tcmalloc/tcmalloc;  
  4. events {  
  5.     use epoll;  
  6.     worker_connections  51000;  
  7.         }  
  8. http  
  9. {  
  10.     include       mime.types;  
  11.     default_type  application/octet-stream;  
  12.     keepalive_timeout     65;  
  13.     sendfile              on;  
  14.     tcp_nopush            on;  
  15.     tcp_nodelay           on;  
  16.     client_header_timeout 10;  
  17.     client_body_timeout   10;  
  18.     send_timeout          10;  
  19.     gzip  on;  
  20.     gzip_min_length       1k;  
  21.     gzip_buffers       4 16k;  
  22.     gzip_http_version    1.1;  
  23.     gzip_comp_level        2;  
  24.     gzip_types  text/plain application/x-javascript text/css applocation/xml;  
  25.     server  
  26.         listen       80;  
  27.         server_name  localhost;  
  28.         location / {  
  29.             root   html;  
  30.             index  index.html index.htm;  
  31.                     }  
  32.         error_page   500 502 503 504  /50x.html;  
  33.         location = /50x.html {  
  34.             root   html;  
  35.                               }  
  36.         location ~ \.php$ {  
  37.             root           html;  
  38.             fastcgi_pass   127.0.0.1:9000;  
  39.             fastcgi_index  index.php;  
  40.             fastcgi_param  SCRIPT_FILENAME  /usr/html$fastcgi_script_name;  
  41.             include        fastcgi_params;  
  42.                             } 
  43. }     , server ,     
  44.     log_format  welog  '$remote_addr - $remote_user [$time_local] "$request" '  
  45.                        '$status $body_bytes_sent "$http_referer" '  
  46.                        '"$http_user_agent" "$http_x_forwarded_for"';  
  47.      access_log  /var/log/nginx/access.log  weblog;  
  48.                 
  49.  }  

nginx 서 비 스 를 다시 시작 하면 OK,
   
   
   
   
  1. service nginx restart      
  2. nginx: the configuration file /etc/nginx/nginx.conf syntax is ok 
  3. nginx: configuration file /etc/nginx/nginx.conf test is successful 
  4. Stopping nginx:                                            [  OK  ] 
  5. Starting nginx:                                            [  OK  ] 

서버 에서 로 그 를 정의 해 야 한다 면 어떻게 해 야 합 니까? 다음 과 같 습 니 다.
   
   
   
   
  1. user  www;   
  2. worker_processes  2;   
  3. google_perftools_profiles /var/tmp/nginx/tcmalloc/tcmalloc;   
  4. events {   
  5.     use epoll;   
  6.     worker_connections  51000;   
  7.         }   
  8. http   
  9.   
  10.     include       mime.types;   
  11.     default_type  application/octet-stream;   
  12.     keepalive_timeout     65;   
  13.     sendfile              on;   
  14.     tcp_nopush            on;   
  15.     tcp_nodelay           on;   
  16.     client_header_timeout 10;   
  17.     client_body_timeout   10;   
  18.     send_timeout          10;   
  19.     gzip  on;   
  20.     gzip_min_length       1k;   
  21.     gzip_buffers       4 16k;   
  22.     gzip_http_version    1.1;   
  23.     gzip_comp_level        2;   
  24.     gzip_types  text/plain application/x-javascript text/css applocation/xml;   
  25.     server   
  26.         listen       80;   
  27.         server_name  localhost;   
  28.         location / {   
  29.             root   html;   
  30.             index  index.html index.htm;   
  31.                     }   
  32.         error_page   500 502 503 504  /50x.html;   
  33.         location = /50x.html {   
  34.             root   html;   
  35.                               }   
  36.         location ~ \.php$ {   
  37.             root           html;   
  38.             fastcgi_pass   127.0.0.1:9000;   
  39.             fastcgi_index  index.php;   
  40.             fastcgi_param  SCRIPT_FILENAME  /usr/html$fastcgi_script_name;   
  41.             include        fastcgi_params;
  42.  }   
  43.             access_log /var/log/nginx/access2.log;   ,    
  44.      , server ,      
  45.      log_format  welog  '$remote_addr - $remote_user [$time_local] "$request" '   
  46.                         '$status $body_bytes_sent "$http_referer" '   
  47.                         '"$http_user_agent" "$http_x_forwarded_for"';   
  48.      access_log  /var/log/nginx/access.log  weblog;   
  49.                  
  50.  }  

더 많은 nginx 로그 문 제 는 nginx 의 wiki 를 참고 하 십시오. 
http://wiki.nginx.org/HttpLogModule
결국 문 제 를 해결 하 는 것 은 이 url 입 니 다.           
http://thread.gmane.org/gmane.comp.web.nginx.english/9277
                                     itnihao 2012 년 5 월 3 일 청 두에 서
전 재 는 상기 정 보 를 명시 해 주 십시오.

좋은 웹페이지 즐겨찾기