nginx. conf 상세 설명 및 부하 균형 설정
7287 단어 nginx.conf
# Nginx
user www www;
#nginx , CPU 。
worker_processes 8;
# ,[ debug | info | notice | warn | error | crit ]
error_log /var/log/nginx/error.log info;
#
pid /var/run/nginx.pid;
# nginx , ( ulimit -n) nginx , nginx , ulimit -n 。
worker_rlimit_nofile 65535;
#
events
{
# ,use [ kqueue | rtsig | epoll | /dev/poll | select | poll ]; epoll Linux 2.6 I/O , FreeBSD , kqueue 。
use epoll;
connections 20000; #
# ( = * ) , ulimit -n
worker_connections 65535;
}
# http
http
{
include mime.types; #
types {
text/html html;
image/gif gif;
image/jpeg jpg;
image/png png;
}
default_type application/octet-stream; #
#charset utf-8; #
server_names_hash_bucket_size 128; # hash
client_header_buffer_size 32k; #
large_client_header_buffers 4 64k; #
client_max_body_size 8m; #
sendfile on; # ,sendfile nginx sendfile , on, IO , off, I/O , 。 : off。
autoindex on; # , , 。
tcp_nopush on; #
tcp_nodelay on; #
keepalive_timeout 120; # ,
open_file_cache max=65535 inactive=20s; #max , ,inactive 。
open_file_cache_valid 30s; #
open_file_cache_min_uses 1; #open_file_cache inactive , , , , inactive , 。
server_tokens off; # Nginx
#FastCGI : , , 。 。
sendfile on; # sendfile()
tcp_nopush on; # linux TCP_CORK,sendfile ,
keepalive_timeout 60; #keepalive
tcp_nodelay on; # TCP_NODELAY keepalive
fastcgi_connect_timeout 300; # FastCGI
fastcgi_send_timeout 300; # FastCGI , FastCGI 。
fastcgi_read_timeout 300; # FastCGI , FastCGI 。
fastcgi_buffer_size 64k; # fastcgi_buffers
fastcgi_buffers 16 16k; # FastCGI
fastcgi_busy_buffers_size 128k; # fastcgi_buffers
fastcgi_temp_file_write_size 128k; # fastcgi_temp_path , fastcgi_buffers , 502 Bad Gateway
fastcgi_cache dingtm # FastCGI , CPU , 502
fastcgi_cache_valid 200 302 1h; # 1
fastcgi_cache_valid 301 1d; #1
fastcgi_cache_valid any 1m; # 1
fastcgi_cache_min_uses 1; # fastcgi_cache_path inactive
#gzip
gzip on; # gzip
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;
include vhosts/*.conf; #
# , text/html, , , warn。
gzip_vary on;
#limit_zone crawler $binary_remote_addr 10m; # IP
upstream blog.ha97.com {
#upstream ,weight , 。weigth , 。
server 192.168.80.121:80 weight=3;
server 192.168.80.122:80 weight=2;
server 192.168.80.123:80 weight=3;
}
#
server
{
#
listen 80;
# ,
server_name www.ha97.com ha97.com;
index index.html index.htm index.php;
root /data/www/ha97;
location ~ .*.(php|php5)?$
{
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
#
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 10d;
}
#JS CSS
location ~ .*.(js|css)?$
{
expires 1h;
}
#
log_format access ‘$remote_addr – $remote_user [$time_local] “$request” ‘
‘$status $body_bytes_sent “$http_referer” ‘
‘”$http_user_agent” $http_x_forwarded_for’;
#
access_log /var/log/nginx/ha97access.log access;
# “/”
location / {
proxy_pass http://127.0.0.1:88;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
# Web X-Forwarded-For IP
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# , 。
proxy_set_header Host $host;
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
}
# Nginx
location /NginxStatus {
stub_status on;
access_log on;
auth_basic “NginxStatus”; #
auth_basic_user_file conf/htpasswd;
#htpasswd apache htpasswd 。
auth_basic_user_file conf/.htpasswd; # , ,
}
#
# jsp tomcat resin
location ~ .(jsp|jspx|do)?$ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8080;
}
# nginx tomcat resin
location ~ .*.(htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$
{ expires 15d; }
location ~ .*.(js|css)?$
{ expires 1h; }
}
}
부하 균형 설정 http 노드 는 다음 과 같 습 니 다.
# http ,
http {
# mime , mime.type
include /etc/nginx/mime.types;
default_type application/octet-stream;
#
access_log /var/log/nginx/access.log;
#
#。。。。。。。。。。
#
upstream mysvr {
#weigth ,
server 192.168.8.1x:3128 weight=5;# Squid 3128
server 192.168.8.2x:80 weight=1;
server 192.168.8.3x:80 weight=6;
}
upstream mysvr2 {
#weigth ,
server 192.168.8.x:80 weight=1;
server 192.168.8.x:80 weight=6;
}
#
server {
# 192.168.8.x 80
listen 80;
server_name 192.168.8.x;
# aspx
location ~ .*\.aspx$ {
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;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
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
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
내 눈의 nginx#nginx , CPU 。 # nginx , ( ulimit -n) nginx , nginx , ulimit -n 。 # ,use [ kqueue | rtsig | epoll | /dev/poll | select |...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.