돌리 기 Nginx - Nginx + Proxy Cache 빠 른 구축
ulimit -SHn 65535
groupadd -g 80 www
useradd -g www -u 80 www
yum install pcre pcre-devel rsync gcc -y
mkdir /opt/soft
cd /opt/soft
wget http://labs.frickle.com/files/ngx_cache_purge-2.1.tar.gz
tar -xf ngx_cache_purge-2.1.tar.gz
wget http://nginx.org/download/nginx-1.4.0.tar.gz
tar -xf nginx-1.4.0.tar.gz
cd nginx-1.4.0
./configure --user=www --group=www --add-module=../ngx_cache_purge-2.1 --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
cd ../
mkdir -p /data/nginx/logs
mkdir -p /data/nginx/proxy_cache_dir
mkdir -p /data/nginx/proxy_cache_tmp
chown www.www /data/nginx -R
/usr/local/nginx/sbin/nginx -t && /usr/local/nginx/sbin/nginx
2. nginx. conf 를 설정 하여 캐 시 대 리 를 실현 하고 직접 복사 하여 교체 합 니 다. 여기까지 설정 이 완료 되 었 습 니 다.
vim /usr/local/nginx/conf/nginx.conf
user www www;
worker_processes 8;
error_log /data/nginx/logs/error.log crit;
pid /usr/local/nginx/nginx.pid;
worker_rlimit_nofile 65535;
events
{
use epoll;
worker_connections 65535;
}
http
{
include mime.types;
default_type application/octet-stream;
charset utf-8;
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 300m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
client_body_buffer_size 512k;
proxy_connect_timeout 5;
proxy_read_timeout 60;
proxy_send_timeout 5;
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;
proxy_temp_path /data/nginx/proxy_cache_tmp;
proxy_cache_path /data/nginx/proxy_cache_dir levels=1:2 keys_zone=cache_one:6000m inactive=1d max_size=400g;
#include vhosts/* ;
log_format cache '$request_time - $upstream_cache_status ' '$status $remote_addr - $remote_user [$time_local] - $request' '$body_bytes_sent $http_referer' 'upstream_response_time $upstream_response_time ' 'msec $msec';
access_log /data/nginx/logs/access.log cache;
upstream cdnups {
server www.baidu.com:80 weight=100 max_fails=3 fail_timeout=30s;
}
server
{
listen 80;
server_name www.baidu.com;
index index.html index.htm;
location /
{
# 502、504、 , upstream , 。
proxy_next_upstream http_502 http_504 error timeout invalid_header;
proxy_cache cache_one;
# HTTP
proxy_cache_valid 200 304 12h;
# 、URI、 Web Key ,Nginx Key ,
proxy_cache_key $host$uri$is_args$args;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://cdnups;
#expires 30d;
}
location ~ /purge(/.*)
{
allow 127.0.0.1;
allow 192.168.1.1;
deny all;
proxy_cache_purge cache_one $host$1$is_args$args;
}
location ~ .*\.(php|jsp|cgi|do|shtml)?$
{
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://cdnups;
}
}
}
nginx 다시 시작
kill -HUP `cat /usr/local/nginx/nginx.pid`
4. nginx 대 리 를 테스트 하고 가설 한 기 계 는 192.168.100.100 이다.
# hosts
192.168.100.100 www.baidu.com
# www.baiud.com
# /data/nginx/logs/access.log ,
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Fortinet FortiWeb Web Application Firewall Policy BypassFrom: Geffrey Velasquez Date: Wed, 2 May 2012 20:33:23 -0500...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.