Идеальный конфиг nginx для трекера

Идеальный конфиг nginx для трекера

user apache;
error_log  /var/log/nginx/error.log  crit;
pid        /var/run/nginx.pid;

#Всего соединений = worker_processes x worker_connections
worker_processes auto;

events {
	# Устанавливает максимальное количество соединений одного рабочего процесса. Следует выбирать значения от 1024 до 4096.
    worker_connections  1024;

	# Будет принимать максимально возможное количество соединений
	multi_accept on;
}


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

    log_format  main  '$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/access.log  main;

	############################ my conf
	#sendfile on;

	# tcp_nodelay и tcp_nopush Будет отправлять заголовки и и начало файла в одном пакете
	tcp_nodelay on;
	tcp_nopush on;

	# Определяет максимальное количество файлов, информация о которых будет содержаться в кеше
	open_file_cache max=200000 inactive=20s;

	# Определяет через какое время информация будет удалена из кеша
	open_file_cache_valid 30s;

	# Будет кешировать информацию о тех файлах, которые были использованы хотя бы 5 раз
	open_file_cache_min_uses 5;

	#Основной лог лучше отключить для экономии дисковых операций,
	access_log off;

	# Будет ждать 30 секунд перед закрытием keepalive соединения
	keepalive_timeout  30;

	# Если клиент перестал читать отвечать, Nginx будет сбрасывать соединение с ним
	reset_timedout_connection on;

	# Будет ждать 10 секунд тело запроса от клиента, после чего сбросит соединение
	client_body_timeout 15;

	# Если клиент прекратит чтение ответа, Nginx подождет 5 секунд и сбросит соединение
	send_timeout 5;

	###################################

	# Метод отправки данных sendfile более эффективен, чем стандартный метод read+write
    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  65;

	# Будет сжимать все файлы с перечисленными типами
    gzip  on;
	gzip_disable "msie6"; 
	gzip_types text/plain text/css application/json application/x-javascript text/javascript application/javascript;

    include /etc/nginx/conf.d/*.conf;
	include /usr/local/ispmgr/etc/nginx.domain;
	client_max_body_size 16M;
	log_format isp '$bytes_sent $request_length';
	server {
		server_name site.ru www.site.ru;
		listen 94.75.244.103;
		disable_symlinks if_not_owner from=$root_path;
		set $root_path /var/www/srv/data/www/site.ru;
		location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf|docx?|xlsx?|rtf|txt|rar|ico|pdf|djvu)$ {
			root $root_path;
			access_log /var/www/nginx-logs/srv isp;
			access_log /var/www/httpd-logs/ns2.x-ns.net.access.log ;
			error_page 404 = @fallback;
			error_page 403 = @fallback;
			deny all;
		}
		location / {
			proxy_pass http://xx.xx.xx.xx:81;
			proxy_redirect http://xx.xx.xx.xx:81/ /;
			proxy_set_header Host $host;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			proxy_set_header X-Forwarded-Proto $scheme;
			proxy_set_header X-Real-IP $remote_addr;
			deny all;
			error_page 403 = @fallback;
		}
Обновлено: 29/10/2015 — 15:28

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *