В начало » ЖЖ

[Андрей Роговский] Как кешировать nginx

21 июня 2009 56 views Нет комментариев

Допустим есть какой-то полудохлый сервер с сайтами и он частенько
лагает.
Берем и ставим там nginx для кеширования. В результате все чудным
образом ускоряется и работает в разы быстрее.
Отлично подходит для сайтов которые обновляются не так уж и часто
Конфиг:

worker_processes 1;
worker_rlimit_nofile 16384;

error_log /var/log/nginx/nginx.err.log crit;
pid /var/run/nginx.pid;

events {
worker_connections 16384;
use epoll;
}

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

sendfile on;
tcp_nopush on;
tcp_nodelay on;

keepalive_timeout 15;

gzip on;
gzip_disable .MSIE [1-6].;
gzip_min_length 1100;
gzip_buffers 4 8k;
gzip_types text/plain text/css text/xml application/x-javascript;

proxy_cache_path /var/tmp/nginx/proxy_cache levels=1:2
keys_zone=CACHE:1024m;

include /etc/nginx/vhosts/*.conf;

}

Как понятно из конфига — должна быть директория /etc/nginx/vhosts/ 🙂
А вот и скрипт, с помощью которого можно автоматизировать добавление
доменов, я назвал его addhost.sh, его надо класть в /etc/nginx:

#!/bin/sh
cat < vhosts/$DOMAIN.conf server { listen $IP:80 default deferred; server_name $DOMAIN www.$DOMAIN; set \$p $DOMAIN; access_log off; proxy_cache CACHE; proxy_cache_min_uses 1; proxy_cache_valid 10m; proxy_cache_use_stale http_503; proxy_ignore_client_abort on; open_file_cache max=1000 inactive=60s; open_file_cache_valid 120s; open_file_cache_min_uses 2; open_file_cache_errors on; location / { proxy_pass http://$IP:85/; proxy_redirect off; proxy_set_header Host \$p; proxy_set_header X-Real-IP \$remote_addr; proxy_set_header X-Host \$http_host; proxy_set_header X-URI \$uri; proxy_set_header X-ARGS \$args; proxy_set_header Refer \$http_refer; } } EOF service nginx reload Все это безобразие запускается так: cd /etc/nginx; IP=айпишнек DOMAIN=доменчик ./addhost.sh Простенько и со вкусом. В моем примере бакенд висит на 85-ом порту, но конечно все можно сменить, например у меня на хостинге апач на 80-ом, а nginx - на 85-ом

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Загрузка...

Оставьте комментарий!

Оставьте ваш комментарий или trackback со своего сайта. Вы можете подписаться на новые комментарии через RSS.

Придерживайтесь темы записи. Никакого спама!

Вы можете использовать следующие тэги:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>