Обновился nginx – сдох сайт

12
Z
На сайте с 19.12.2011
Offline
16
Zbt
1255

ОС: Debian 6, стоит апач и сверху nginx

Всё работало, сегодня пришел апдейт:

nginx from 1.0.15-1~dotdeb.0 to 1.2.0-1~dotdeb.1

nginx-common from 1.0.15-1~dotdeb.0 to 1.2.0-1~dotdeb.1

nginx-full from 1.0.15-1~dotdeb.0 to 1.2.0-1~dotdeb.1

libapache2-mod-php5

Ну я его и накатил, видимо изменилось что-то в правилах написания конфигов, но я немогу понять что.

На данный момент если выключить nginx и настроить апач на порт 80, то всё ок.

Если nginx запустить со старым конфигом, то страницы сайтов на WordPress перестают открываться,

но в админку зайти можно.

Заход с главной страницы вызывает ошибку браузеров о бесконечной переадресации.

Конфиг вот такой:


user www-data;

worker_processes 1;

timer_resolution 100ms;

error_log /var/log/nginx/error.log;

pid /var/run/nginx.pid;



events {

worker_connections 1024;

use epoll;

}



http {

include /etc/nginx/mime.types;

default_type application/octet-stream;

server_names_hash_bucket_size 64;

access_log /var/log/nginx/access.log;



sendfile on;

tcp_nopush on;

tcp_nodelay on;

server_tokens off;



client_body_timeout 10;

client_header_timeout 10;

keepalive_timeout 5 5;

send_timeout 20;





gzip on;

gzip_proxied any;

gzip_min_length 1024;

gzip_http_version 1.0;

gzip_buffers 4 8k;

gzip_comp_level 5;

gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;



# default virtual host



server {



listen 80 default;



server_name localhost;



deny all;

}

server

{

listen 80;

server_name www.domain.ru domain.ru;

## Default server configuration

charset utf-8;

index index.php index.html;

root /var/www/username/www/site/;

## removing www

if ($host = 'www.domain.ru' ) {

rewrite ^/(.*)$ http://domain.ru/$1 permanent;

}



# custom error pages

error_page 404 /index.php;

error_page 500 502 503 504 /500.html;



location = /500.html

{

index 50x.html;

root /var/www/username/www/site/;

}



location = /favicon.ico

{

access_log off;

log_not_found off;

}

location = /robots.txt

{

access_log off;

log_not_found off;

}





## Add headers

proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;



## For proxy_store

proxy_buffering on;

## Logs

access_log /var/log/nginx/nginx.access_log_.log;

error_log /var/log/nginx/nginx._error.log;



## SSI support

#ssi on;



## Rather than just denying .ht* in the config, why not deny

## access to all .invisible files

location ~ /\.

{

deny all;

access_log off;

log_not_found off;

}



## default location

location /

{

try_files $uri $uri/ /index.php;

}



## PHP handler

location ~ \.php$

{

##NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini

#try_files $uri $uri/ /index.php;

proxy_pass http://127.0.0.1:81;



## Other config

}

# set expire for static content

location ~* \.(js|css|png|jpg|jpeg|gif|ico)$

{

expires max;

log_not_found off;

}

}

}
L
На сайте с 13.01.2011
Offline
132
#1

/etc/init.d/nginx restart

nginx -t

Контакты-icq 535609 ()
Z
На сайте с 19.12.2011
Offline
16
Zbt
#2

Рестарт конечно делал, конфигурация валидацию проходит каждый раз при старте сервера, на ошибки не ругалось.

LM
На сайте с 18.10.2009
Offline
117
#3

Потёрто...

L
На сайте с 13.01.2011
Offline
132
#4

думаю за 10$ решу вашу проблему, icq в подписи

Z
На сайте с 19.12.2011
Offline
16
Zbt
#5
Logger:
думаю за 10$ решу вашу проблему, icq в подписи

Пока нет денег на платное решение.

V
На сайте с 14.02.2012
Offline
3
#6

Debian. Настройка связки apache + nginx - рекомендую воспользоваться репозиториями описанными в статье и установить сборку nginx-plus с дополнительными модулями, если не сможете решить вопрос лично - обращайтесь, помогу разобраться.

LM
На сайте с 18.10.2009
Offline
117
#7
Valualit:
рекомендую воспользоваться репозиториями описанными в статье и установить сборку nginx-plus с дополнительными модулями

И чем он лучше стандартного из репозитория Debian 6?

V
На сайте с 14.02.2012
Offline
3
#8

Он включает в себя 2 модуля:

ngx_loadavg_variables.patch и ngx_addon's_if_statment.patch

первый позволяет выдавать 503 ошибку при превышении LA заданного уровня

второй - позволяет использовать < > <= >= в if-ах

Кроме всего парни развивают это направление для себя с учетом работы nginx+apache (так же используют эту сборку при настройки с панелями управления, например directadmin).

LM
На сайте с 18.10.2009
Offline
117
#9
Valualit:
Он включает в себя 2 модуля:
ngx_loadavg_variables.patch и ngx_addon's_if_statment.patch

А толку от них, если nginx будет только проксировать запросы к apache?

V
На сайте с 14.02.2012
Offline
3
#10

1) Посоветовал сборку, которую можно настроить в помощь к фаерволу, чтоб отсекать лишнюю нагрузку при ддос атаках. По опыту просто предложил вариант, который использую.

2) Если автор так и не решил вопрос, предлагаю связаться со мной - помогу.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий