форум vBSupport.ru > vBulletin > vBulletin 4.0.x-4.1.х > Вопросы по vBulletin 4.0.x-4.1.х
  • »
VBsupport перешел с домена .ORG на родной .RU Ура! Пожалуйста, обновите свои закладки - VBsupport.ru
 
 
 
 
smilegg
Простоузер
Default error 502 при поиске
0

Доброго времени суток. Трабла на сервере nginx + php-fpm, Vb 4.1.4
При поиске по любому слову\фразе, а так же при поиске "Что нового" и "Сообщения за день" выдаёт ошибку 502 Bad Gateway. Практически моментально, очевидно, до php обработчика даже не доходит. Гугл не дал ни одного ответа. Индекс поиска и удалял, и перестраивал, но пациент признаков жизни не подал. Помогите реанимировать, пожалуйста!
Bot
Yandex Bot Yandex Bot is online now
 
Join Date: 05.05.2005
Реклама на форуме А что у нас тут интересного? =)
 
 
Smalesh
В Черном списке
Default
0

Quote:
Originally Posted by smilegg View Post
Практически моментально, очевидно, до php обработчика даже не доходит.
Quote:
Originally Posted by smilegg View Post
nginx + php-fpm, Vb 4.1.4
Конфиг nginx в студию. Про php-fpm не забудь.
 
 
smilegg
Простоузер
Default
0

Smalesh, что в конфиге может влиять на работу только одного скрипта поиска, при том что все остальные работают отлично?)) keep-alive если только? Сейчас стоит 0. Было и 100, и 700. Эффект тот же. Доберусь до сервера чуть попозже, принесу конфиг.
 
 
Smalesh
В Черном списке
Default
0

Quote:
Originally Posted by smilegg View Post
то в конфиге может влиять на работу только одного скрипта поиска
Не обязательно именно конфиг, может кстати и сам пых такое делать. search.php падает в 502-ю - смотри логи, с какой ошибкой.

Quote:
Originally Posted by smilegg View Post
keep-alive если только?
Хм. Там много чего есть где крутить. Это с тестового:

Code:
    sendfile        on;
    tcp_nopush     on;
    tcp_nodelay      on;
    send_lowat       12000;

    #keepalive_timeout  0;
    keepalive_timeout  65 20;

    client_header_timeout  3m;
    client_body_timeout    3m;
    send_timeout           3m;

    client_header_buffer_size    1k;
    large_client_header_buffers  8 8k;

    server_tokens      off;
    autoindex off;
 
 
smilegg
Простоузер
Default
0

Вот он, конфиг:
Code:
user www-data;
worker_processes 2;
worker_rlimit_nofile 80000;

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

events {
    worker_connections 65536;
    use epoll;
    # multi_accept on;
}

http {
    include       /etc/nginx/mime.types;
    include /etc/nginx/conf.d/*.conf;
    #access_log /var/log/nginx/access.log;
	
    keepalive_timeout	0;
    sendfile       		on;
    tcp_nopush     		on;
    tcp_nodelay			on;
    gzip  				off;
    #gzip_static        on;
    gzip_disable 		"MSIE [1-6]\.(?!.*SV1)";
    output_buffers		1 32k;
    postpone_output		1460;
    client_max_body_size 50m;
    server_tokens 		off;
    reset_timedout_connection on;
    
    server {
    
		listen 443 default;
		keepalive_timeout   70;
		server_name site.com;

		testcookie off;
		testcookie_name BPC;
		testcookie_secret keepmescret;
		testcookie_session $remote_addr;
		testcookie_arg attempt;
		testcookie_max_attempts 2;
		testcookie_fallback /cookies.html?backurl=https://$host$request_uri;
		testcookie_get_only on;
		testcookie_redirect_via_refresh on;
		testcookie_refresh_template '<html><body><script>document.cookie="BPC=$testcookie_set";document.location.href="$testcookie_nexturl";</script></body></html>';

		location = /cookies.html {
		    root /var/www;
		}

	    location / {
            testcookie on;
            root   /var/www/forum;
            index  index.html index.htm index.php;
	    }

        location ~ \.php$ {
		    testcookie on;
		    fastcgi_pass   127.0.0.1:9000;
		    fastcgi_index  index.php;
		    fastcgi_param  SCRIPT_FILENAME  /var/www/forum$fastcgi_script_name;
		    fastcgi_param  PATH_INFO $fastcgi_script_name;
		    include /etc/nginx/fastcgi_params;
        }

        location ~ /\.ht {
                deny all;
        }

        ssl                 on;
        ssl_protocols       SSLv3 TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers         AES128-SHA:AES256-SHA:RC4-SHA:DES-CBC3-SHA:RC4-MD5;
        ssl_certificate     /etc/nginx/ssl/cert.pem;
        ssl_certificate_key /etc/nginx/ssl/cert.key;
        ssl_session_cache   shared:SSL:10m;
        ssl_session_timeout 10m;
	}
}
Лог ошибок сказал:
Quote:
2012/06/24 21:14:23 [error] 21987#0: *6 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: xxx.xxx.xx.xx, server: site.com, request: "GET /search.php?do=getdaily&contenttype=vBForum_Post HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "site.com", referrer: "https://site.com/forum.php"
 
 
netwind
Гуру
 
netwind's Avatar
Default
0

Теперь нужно посмотреть логи php-fpm.
Какие там настройки поиска? какой движок используется ?
Если вы используете не полнотекстовый, а встроенный движок поиска, то там функции могли в некоторых случаях много памяти потреблять и приводить в аварийному завершению обработчика php (apache или как в этом случае php-fpm)
 
 
smilegg
Простоузер
Default
0

E_ALL & ~E_DEPRECATED, log_errors=on, файл, указанный в error_log, пустой. Памяти скриптам разрешено хапать аж 265mb, таймлимит 30.
netwind, движок поиска дефолтный, не трогал его ни грамма. Стоит поискать альтернативы, я думаю и не париться с ним?
 
 
netwind
Гуру
 
netwind's Avatar
Default
0

smilegg, ну база то ощутимая? там есть предпосылки к тому, чтобы лимит памяти при поиске был достигнут? попробуй просто увеличить лимит до 1024 и посмотреть что будет.
если возникает критическая ошибка, то в логах php может ничего не быть. логи php-fpm там отдельно есть?
альтернатива - классический apache. там по крайней мере точно известно где error.log.
 
 
Smalesh
В Черном списке
Default
0

Оффтоп
 
 
smilegg
Простоузер
Default
0

netwind, да в том-то и прикол что форум новый, контента совсем немного. И так народ лениво идёт, а тут ещё и с косяками с такими... не в мою пользу играет. Увеличиьт до 1024... у меня столько нет =D VPS на 512 мб. 300 занято на сервере в среднем постоянно, так что больше 256 нет смысла отводить скрипту, ибо и 256 нет))

smilegg добавил 26.06.2012 в 22:42
Quote:
альтернатива - классический apache. там по крайней мере точно известно где error.log.
Какая связь между логами ошибок php и apache? Никакой. Где у меня eror.log nginx я знаю, куда настроил лог ошибок php-fpm тоже знаю (и phpinfo вываливает тот же путь к логу). Для php-fpm действительно есть отдельный конфиг, сейчас притащу.

Last edited by smilegg : 06-26-2012 at 10:42 PM. Reason: Добавлено сообщение
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT +4. The time now is 12:43 PM.


Powered by vBulletin® Version 3.0.1
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Loading...