504 ошибка nginx ispmanager

Код ошибки в формате 5хх говорит о том, что на стороне сервера есть проблема: сервер не может обработать запрос от клиента. Клиентом в данном случае выступает браузер.

Ошибка 504 Gateway Time Out возникает, когда в заданный промежуток времени сервер не получает ответ от другого сервера, при этом другой сервер выполняет роль прокси или шлюза.




Ошибка 504 что значит

Какие ещё бывают варианты отображения ошибки:

  • HTTP Error 504,
  • Gateway Timeout Error,
  • HTTP Error 504 – Gateway Timeout,
  • 504 Gateway Timeout nginx,
  • 504 Gateway Time-out – The server didn’t respond in time,
  • Ошибка 504 Время ответа сервера истекло,
  • Время ожидания шлюза (504),
  • Ошибка тайм-аута шлюза,
  • HTTP 504,
  • 504 Ошибка.

В этой статье мы расскажем, как устранить код ошибки 504.

Как исправить ошибку 504 посетителю сайта

Итак, вы перешли на сайт, но вместо веб-страницы видите сообщение с кодом 504.




Что такое тайм аут шлюза

Проблема может быть как со стороны сайта, так и со стороны устройства, например настроек браузера.
Чтобы убедиться в том, что настройки браузера в порядке:

1) Обновите страницу. Но обновите не клавишей F5, а выделите содержимое адресной строки и нажмите Enter. Если после этих действий ошибка 504 не возникает ни на текущем, ни на любом другом сайте – её можно проигнорировать.

2) Зайдите на тот же ресурс через другой браузер. Если в этом случае сайт открылся корректно, перейдите к следующему пункту.

3) Очистите кэш браузера и удалите файлы cookie. После этого браузер будет работать быстрее.
Воспользуйтесь инструкцией Как очистить кэш браузера.

4) Перезагрузите роутер или модем. Отключите устройство от сети примерно на 10 минут.

5) Очистите кэш DNS. Для этого воспользуйтесь инструкцией ниже.


Как очистить кэш DNS

В зависимости от вашей операционной системы очистите кэш по одной из инструкций.

1) Откройте командную строку. Для этого введите в поисковую строку «Командная строка» и выберите появившееся приложение:




2) Введите команду:

3) Дождитесь сообщения об очистке кэша:




1) Откройте терминал клавишами Ctrl+Alt+T.

2) Введите команду:

Для Ubuntu:

sudo service network-manager restart

Для других дистрибутивов:

sudo /etc/init.d/nscd restart

1) Войдите в терминал. Для этого нажмите клавиши Command + Space. Введите Терминал и нажмите на найденное приложение.

2) Введите команду:

sudo killall -HUP mDNSResponder

Готово, вы очистили кэш DNS.

6) Обратитесь в техподдержку вашего интернет-провайдера. Возможно, это проблема сети, за которую отвечает провайдер.

Если эти действия не принесли результата – обратитесь в техническую поддержку сайта.

Если вы владелец сайта

Как исправить ошибку 504 на виртуальном хостинге

1 способ

Эта ошибка может возникнуть в случае, если для Nginx был превышен лимит на время ответа сайта. По умолчанию это 30 секунд, при этом среднее время загрузки сайта не должно превышать 1-3 секунды.
Если скрипты вашего сайта должны исполняться дольше 30 секунд, вы можете миновать Nginx и обратиться к сайту по другим портам. Если ваша панель управления хостингом:

  • ISPManager – используйте порт 8081
  • cPanel или Plesk – используйте порт 8080.

2 способ

Если этот вариант вам не подходит, рекомендуем перенести ваш сайт на Облачный сервер, на котором доступна гибкая настройка сервера, в том числе и лимитов. Для этого закажите услугу «Облачные серверы» и перенесите сайт по инструкции Как перенести сайты между услугами REG.RU.

3 способ

Также вы можете изменить директиву max_execution_time в файле php.ini. Она указывает на время, за которое должен отрабатываться скрипт. Для этого:

  1. 1.

  2. 2.

    Укажите нужное значение в строке:

    Где 30 – время выполнения скрипта в секундах.

4 способ

Если вы используете CDN, проблема может быть связана с ней.


Что такое CDN

CDN – это сетевая инфраструктура, которая распределена географически. Она обеспечивает быструю загрузку контента пользователям веб-сервисов и сайтов. Серверы, которые входят в состав CDN, географически расположены так, чтобы сделать время ответа сайта или сервиса минимальным для пользователей.
Пользователь ищет ресурс и тем самым посылает запрос. Запрос идентифицируется и направляется на PoP – на ближайший к пользователю кэширующий сервер в этой инфраструктуре. Возможны два варианта:

  • Если в кэше PoP есть данные об этом запросе, он отвечает браузеру, а тот отображает контент.
  • Если в кэше этого сервера нет данных, запрос переадресовывается к ориджину – центральному серверу, на котором хранятся все данные. Когда ориджин отвечает на запрос, PoP кэширует его и передаёт ответ браузеру. После этого контент отображается в браузере.

Ошибку 504 может вернуть кэширующий сервер, если превышено время ожидания от центрального сервера.

Если ошибку исправить не удалось, обратитесь в техническую поддержку.

Как исправить ошибку 504 на VPS

1 способ

Эта ошибка может возникнуть в случае, если для Nginx был превышен лимит на время ответа сайта. По умолчанию это 30 секунд, при этом среднее время загрузки сайта не должно превышать 1-3 секунды.
Чтобы избавиться от этой ошибки, попробуйте повысить время ожидания веб-сервера Nginx.

2 способ

Также ошибка 504 может возникать, когда Nginx используется как прокси-сервер для Apache. В этом случае нужно настроить параметры времени ожидания при проксировании. Максимальное время исполнения скрипта в настройках веб-сервера — 300 секунд.
Изменить параметры ожидания можно в конфигурационном файле nginx.conf. Для этого:

  1. 1.

    Подключитесь к серверу по SSH.

  2. 2.

    Откройте конфигурационный файл с помощью команды:

    sudo nano /etc/nginx/nginx.conf
  3. 3.

    Добавьте строки в блоке server:

    #server {
    
    #...
    
    proxy_connect_timeout 600;
    proxy_send_timeout 600;
    proxy_read_timeout 600;
    send_timeout 600;
    
    #...
    #}

    Где 600 — время в секундах.

  4. 4.

    Перезапустите Nginx с помощью команды:

Если решить проблему не удалось, обратитесь в техническую поддержку или на тематические форумы по Nginx.

В некоторых случаях возникает проблема со временем выполнения скриптов.

Конфигурация:

— ISPmanager Business 5.86.1
— CentOS release 6.8 (Final)
— PHP 5.6
— Режим работы: CGI

При выполнении длительностью более 60 секунд получаем ошибки:

В браузере:
— 504 Gateway Time-out
— The gateway did not receive a timely response from the upstream server or application.
В логе веб-сервера Apache:
—  Timeout waiting for output from CGI script 

Решение:
(Пункты 1 и 2 выполняются от администратора или рута: WWW-Домены -> Конфиг)

1. Изменить конфиг Apache, добавив туда директиву Timeout:

<VirtualHost 127.0.0.1:8080>

Timeout 1800
</VirtualHost>

2. Изменить конфиг nginx, добавив в блок «location @fallback {…}»:

proxy_connect_timeout 1800;
proxy_send_timeout 1800;
proxy_read_timeout 1800;
send_timeout 1800;

3. Убедится в том что конфигурационные директивы PHP max_input_time и max_execution_time имеют то же значение таймаута. Делается от юзера, в настройках выбранной версии PHP.

Также читают

Ошибка 504 на виртуальном хостинге «Gateway timeout»

Эта ошибка может возникнуть в случае, если для Nginx был превышен лимит на время ответа сайта (по умолчанию 30 секунд). Как правило, среднее время загрузки сайта не должно превышать 1-3 секунды.где установлен nginx в качестве фронтенда и Apache в качестве бэкенда. И многие думают, что проблема в nginx. Это не так. 

504 Gateway Timeout — значит, что клиентский запрос nginx передал апачу, а апач не смог в установленный лимит времени вернуть HTTP-ответ. Немного подробнее о взаимоотношениях nginx’а и апача в статье про 502 Bad Gateway.

Почему Apache не смог ответить? Скорее всего дело в возросшей нагрузке на сайт, при которой Apache не успевает отдавать HTTP-ответы, и новые запросы встают в очередь. Клиенты «висят» в очереди, но за приемлемое время их так и не успевают обслужить, поэтому соединения сбрасываются. 

Способы устранения ошибки 504: 

  • Добавить ресурсов серверу, в частности оперативной памяти, и увеличить количество процессов httpd (Apache), увеличение значения параметра «PHP max_execution_time«.
  • Оптимизировать работу скриптов сайта, чтобы они выполнялись быстрее.
  • Если скрипты вашего сайта должны выполняться свыше 30 секунд (например, выгрузка базы данных или обмен с 1С), вы можете обратиться к сайту по порту 8081 (для ISPmanager), минуя веб-сервер Nginx.

Если раньше такой ошибки не наблюдалось, обратитесь в техподдержку. 

Если этот варианты вам не подходят, рекомендуем перенести ваш сайт на VPS, на котором доступна гибкая настройка сервера, в том числе и лимитов. Для этого закажите услугу «VPS» . 

Ошибка 504 на VPS

Эта ошибка может возникнуть в случае, если для Nginx был превышен лимит на время ответа сайта (по умолчанию 30 секунд). Как правило, среднее время загрузки сайта не должно превышать 1-3 секунды. Чтобы избавиться от этой ошибки, попробуйте повысить время ожидания веб-сервера Nginx.

Если скрипты вашего сайта должны выполняться свыше 30 секунд (например, выгрузка базы данных или обмен с 1С), вы можете обратиться к сайту по порту 8081 (для ISPmanager), минуя веб-сервер Nginx. 

Также ошибка 504 может возникать, когда Nginx используется как прокси-сервер для Apache. В этом случае нужно настроить параметры времени ожидания при проксировании.

Добавьте следующие строки в блоке server в ваш файл nginx.conf:

#server {
#...

proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
send_timeout 600;

#...
#}

Затем перезапустите Nginx с помощью команды service nginx reload

Если решить проблему не удалосьобратитесь в техподдержку. 

  • Главная
  • Форум
  • ISPmanager, панель управления сервером
  • Общие технические вопросы
  • ошибка 504 в Nginx 1.2.7

  1. 28.03.2013, 00:56


    #1

    hostdot.ru вне форума


    Junior Member


    Exclamation ошибка 504 в Nginx 1.2.7

    Доброго времени суток! Установил сервер ISPmanager apache+nginx1.2.7 и просто вдруг ни с чего через часов 15 на всех сайтах появилась ошибка 504.
    Вот что нашел в логах ошибок nginx
    upstream timed out (110: Connection timed out) while connecting to upstream, client и такого очень много.

    И еще кое-что:
    # netstat -nlp | grep :81
    tcp 0 0 :::81 :::* LISTEN 26006/httpd

    и
    # netstat -nlp | grep :80
    tcp 0 0 :::80 :::* LISTEN 17006/nginx

    Вот логи апача:
    [Wed Mar 27 12:43:38 2013] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
    [Wed Mar 27 12:43:38 2013] [notice] Digest: generating secret for digest authentication …
    [Wed Mar 27 12:43:38 2013] [notice] Digest: done
    [Wed Mar 27 12:43:38 2013] [notice] Apache configured — resuming normal operations

    Вот почему сначала поработало просто ОТЛИЧНО часов 15, а потом вдруг 504 и даже не знаю, что и делать. Уже голову сломал. В интернете на этот вопрос нигде не наше ответа. И зачем, что довольно многие люди сталкиваются с данной проблемой, но нигде решения не нашел.

    Выдает ошибку 504 на порту 80, на котором Nginx, напрямую через апач на порту 81 сайты работают
    сайт.ру:80 ошибка 504, сайт.ру:81 грузится.

    Если удалить Nginx, то сайты начинают грузиться, а при повторной установке Nginx снова ошибку 504 теперь выдают все сайты через порт 80(Nginx)

    Последний раз редактировалось hostdot.ru; 28.03.2013 в 01:05.


  2. 28.03.2013, 01:13


    #2

    rootden вне форума


    Senior Member

    Аватар для rootden


    По умолчанию

    Ошибка 504 это Gateway Timeout

    конфиг nginx покажите


  3. 28.03.2013, 01:19


    #3

    hostdot.ru вне форума


    Junior Member


    По умолчанию

    Цитата Сообщение от rootden
    Посмотреть сообщение

    Ошибка 504 это Gateway Timeout

    конфиг nginx покажите

    Код:

    #######################################################################
    #
    # This is the main Nginx configuration file.  
    #
    # More information about the configuration options is available on 
    #   * the English wiki - http://wiki.nginx.org/Main
    #   * the Russian documentation - http://sysoev.ru/nginx/
    #
    #######################################################################
    
    #----------------------------------------------------------------------
    # Main Module - directives that cover basic functionality
    #
    #   http://wiki.nginx.org/NginxHttpMainModule
    #
    #----------------------------------------------------------------------
    
    user apache;worker_processes  1;
    
    error_log  /var/log/nginx/error.log;
    #error_log  /var/log/nginx/error.log  notice;
    #error_log  /var/log/nginx/error.log  info;
    
    pid        /var/run/nginx.pid;
    
    
    #----------------------------------------------------------------------
    # Events Module 
    #
    #   http://wiki.nginx.org/NginxHttpEventsModule
    #
    #----------------------------------------------------------------------
    
    events {
        worker_connections  1024;
    }
    
    
    #----------------------------------------------------------------------
    # HTTP Core Module
    #
    #   http://wiki.nginx.org/NginxHttpCoreModule 
    #
    #----------------------------------------------------------------------
    
    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;
    
        sendfile        on;
        #tcp_nopush     on;
    
        #keepalive_timeout  0;
        keepalive_timeout  65;
        server_tokens      off;
    
        #gzip  on;
        
        # Load config files from the /etc/nginx/conf.d directory
        # The default server is in conf.d/default.conf
        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 hostdot.ru www.hostdot.ru;
    		listen 184.82.206.61;
    		disable_symlinks if_not_owner from=$root_path;
    		set $root_path /var/www/votod/data/www/hostdot.ru;
    		location ~* ^.+.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
    			root $root_path;
    			access_log /var/www/nginx-logs/votod isp;
    			access_log /var/www/httpd-logs/hostdot.ru.access.log ;
    			error_page 404 = @fallback;
    		}
    		location / {
    			proxy_pass http://184.82.206.61:81;
    			proxy_redirect http://184.82.206.61: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;
    		}
    		location ~* ^/(webstat|awstats|webmail|myadmin|pgadmin)/ {
    			proxy_pass http://184.82.206.61:81;
    			proxy_redirect http://184.82.206.61: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;
    		}
    		location @fallback {
    			proxy_pass http://184.82.206.61: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;
    		}
    		location ^~ /webstat/ {
    			auth_basic "Restricted area";
    			auth_basic_user_file /var/www/votod/data/etc/2343514.passwd;
    			try_files $uri @fallback;
    		}
    		include /usr/local/ispmgr/etc/nginx.inc;
    		charset CP1251;
    	}


  4. 28.03.2013, 06:20


    #4

    localhost вне форума


    Member


    По умолчанию

    Цитата Сообщение от hostdot.ru
    Посмотреть сообщение

    Код:

    #######################################################################
    #
    # This is the main Nginx configuration file.  
    #
    # More information about the configuration options is available on 
    #   * the English wiki - http://wiki.nginx.org/Main
    #   * the Russian documentation - http://sysoev.ru/nginx/
    #
    #######################################################################
    
    #----------------------------------------------------------------------
    # Main Module - directives that cover basic functionality
    #
    #   http://wiki.nginx.org/NginxHttpMainModule
    #
    #----------------------------------------------------------------------
    
    user apache;

    user nginx;


  5. 28.03.2013, 06:39


    #5

    hostdot.ru вне форума


    Junior Member


    По умолчанию

    Цитата Сообщение от localhost
    Посмотреть сообщение

    user nginx;

    не помогло. и всё равно ошибка 504 на порту 80(nginx)

    первый раз сталкиваюсь с такой проблемой.

    Заметил, что Nginx отдает только файлы, которые указаны тут location ~* ^.+.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|av i|zip|gz|bz2?|rar|swf|php|html), если убрать gif,то с по ссылке сайт.ру/123.gif картинка не загрузится и будет ошибка 504

    сайты грузятся только напрямую с апача с порта 81. пример сайт.ру:81 это апач, а так сайт.ру:80 выдает ошибку 504

    Последний раз редактировалось hostdot.ru; 28.03.2013 в 06:48.


  6. 29.03.2013, 02:07


    #6

    sm0kingk1lls вне форума


    Junior Member


    По умолчанию

    конфиг апача в студию, похоже превышен лимит подключений.


  7. 29.03.2013, 02:20


    #7

    rootden вне форума


    Senior Member

    Аватар для rootden


    По умолчанию

    Цитата Сообщение от sm0kingk1lls
    Посмотреть сообщение

    конфиг апача в студию, похоже превышен лимит подключений.

    тс же написал без nginx работает, там нужно смотреть детальнее чего то не хватает или что то лишнее, может быть даже правила в фаерволе.


  8. 29.03.2013, 02:26


    #8

    hostdot.ru вне форума


    Junior Member


    По умолчанию

    Цитата Сообщение от sm0kingk1lls
    Посмотреть сообщение

    конфиг апача в студию, похоже превышен лимит подключений.

    Код:

    ServerTokens ProductOnly
    
    ServerRoot "/etc/httpd"
    
    PidFile run/httpd.pid
    
    Timeout 120
    
    KeepAlive Off
    
    MaxKeepAliveRequests 10000
    
    KeepAliveTimeout 15
    
    <IfModule prefork.c>
    StartServers       10
    MinSpareServers    20
    MaxSpareServers   40
    ServerLimit      150
    MaxClients       150
    MaxRequestsPerChild  50
    </IfModule>
    
    <IfModule worker.c>
    StartServers         2
    MaxClients         150
    MinSpareThreads     25
    MaxSpareThreads     75 
    ThreadsPerChild     25
    MaxRequestsPerChild  0
    </IfModule>
    
    #Listen 12.34.56.78:81
    Listen 81
    
    LoadModule auth_basic_module modules/mod_auth_basic.so
    LoadModule auth_digest_module modules/mod_auth_digest.so
    LoadModule authn_file_module modules/mod_authn_file.so
    LoadModule authn_alias_module modules/mod_authn_alias.so
    LoadModule authn_anon_module modules/mod_authn_anon.so
    LoadModule authn_dbm_module modules/mod_authn_dbm.so
    LoadModule authn_default_module modules/mod_authn_default.so
    LoadModule authz_host_module modules/mod_authz_host.so
    LoadModule authz_user_module modules/mod_authz_user.so
    LoadModule authz_owner_module modules/mod_authz_owner.so
    LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
    LoadModule authz_dbm_module modules/mod_authz_dbm.so
    LoadModule authz_default_module modules/mod_authz_default.so
    LoadModule ldap_module modules/mod_ldap.so
    LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
    LoadModule include_module modules/mod_include.so
    LoadModule log_config_module modules/mod_log_config.so
    LoadModule logio_module modules/mod_logio.so
    LoadModule env_module modules/mod_env.so
    LoadModule ext_filter_module modules/mod_ext_filter.so
    LoadModule mime_magic_module modules/mod_mime_magic.so
    LoadModule expires_module modules/mod_expires.so
    LoadModule deflate_module modules/mod_deflate.so
    LoadModule headers_module modules/mod_headers.so
    LoadModule usertrack_module modules/mod_usertrack.so
    LoadModule setenvif_module modules/mod_setenvif.so
    LoadModule mime_module modules/mod_mime.so
    LoadModule dav_module modules/mod_dav.so
    LoadModule status_module modules/mod_status.so
    LoadModule autoindex_module modules/mod_autoindex.so
    LoadModule info_module modules/mod_info.so
    LoadModule dav_fs_module modules/mod_dav_fs.so
    LoadModule vhost_alias_module modules/mod_vhost_alias.so
    LoadModule negotiation_module modules/mod_negotiation.so
    LoadModule dir_module modules/mod_dir.so
    LoadModule actions_module modules/mod_actions.so
    LoadModule speling_module modules/mod_speling.so
    LoadModule userdir_module modules/mod_userdir.so
    LoadModule alias_module modules/mod_alias.so
    LoadModule rewrite_module modules/mod_rewrite.so
    LoadModule proxy_module modules/mod_proxy.so
    LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
    LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
    LoadModule proxy_connect_module modules/mod_proxy_connect.so
    LoadModule cache_module modules/mod_cache.so
    LoadModule suexec_module modules/mod_suexec.so
    LoadModule disk_cache_module modules/mod_disk_cache.so
    LoadModule file_cache_module modules/mod_file_cache.so
    LoadModule mem_cache_module modules/mod_mem_cache.so
    LoadModule cgi_module modules/mod_cgi.so
    LoadModule version_module modules/mod_version.so
    
    Include conf.d/*.conf
    
    #ExtendedStatus On
    
    User apache
    Group apache
    
    ServerAdmin root@localhost
    
    UseCanonicalName Off
    
    DocumentRoot "/var/www/html"
    
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    
    <Directory "/var/www/html">
    
        Options Indexes FollowSymLinks
    
        AllowOverride None
    
        Order allow,deny
        Allow from all
    
    </Directory>
    
    <IfModule mod_userdir.c>
    
        UserDir disable
    
    
    </IfModule>
    
    DirectoryIndex index.html index.html.var
    
    AccessFileName .htaccess
    
    <Files "(^.ht|~$|.bak$|.BAK$)">
    Order Allow,Deny
    Deny from all
    </Files>
    
    TypesConfig /etc/mime.types
    
    DefaultType text/plain
    
    <IfModule mod_mime_magic.c>
    #   MIMEMagicFile /usr/share/magic.mime
        MIMEMagicFile conf/magic
    </IfModule>
    
    HostnameLookups Off
    
    ErrorLog logs/error_log
    
    LogLevel warn
    
    LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined
    LogFormat "%h %l %u %t "%r" %>s %b" common
    LogFormat "%{Referer}i -> %U" referer
    LogFormat "%{User-agent}i" agent
    
    
    CustomLog logs/access_log combined
    
    ServerSignature Off
    
    Alias /icons/ "/var/www/icons/"
    
    <Directory "/var/www/icons">
        Options Indexes MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>
    
    <IfModule mod_dav_fs.c>
        # Location of the WebDAV lock database.
        DAVLockDB /var/lib/dav/lockdb
    </IfModule>
    
    ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
    
    <Directory "/var/www/cgi-bin">
        AllowOverride None
        Options None
        Order allow,deny
        Allow from all
    </Directory>
    
    IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable
    
    AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
    
    AddIconByType (TXT,/icons/text.gif) text/*
    AddIconByType (IMG,/icons/image2.gif) image/*
    AddIconByType (SND,/icons/sound2.gif) audio/*
    AddIconByType (VID,/icons/movie.gif) video/*
    
    AddIcon /icons/binary.gif .bin .exe
    AddIcon /icons/binhex.gif .hqx
    AddIcon /icons/tar.gif .tar
    AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
    AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
    AddIcon /icons/a.gif .ps .ai .eps
    AddIcon /icons/layout.gif .html .shtml .htm .pdf
    AddIcon /icons/text.gif .txt
    AddIcon /icons/c.gif .c
    AddIcon /icons/p.gif .pl .py
    AddIcon /icons/f.gif .for
    AddIcon /icons/dvi.gif .dvi
    AddIcon /icons/uuencoded.gif .uu
    AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
    AddIcon /icons/tex.gif .tex
    AddIcon /icons/bomb.gif core
    
    AddIcon /icons/back.gif ..
    AddIcon /icons/hand.right.gif README
    AddIcon /icons/folder.gif ^^DIRECTORY^^
    AddIcon /icons/blank.gif ^^BLANKICON^^
    
    DefaultIcon /icons/unknown.gif
    
    ReadmeName README.html
    HeaderName HEADER.html
    
    IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
    
    AddLanguage ca .ca
    AddLanguage cs .cz .cs
    AddLanguage da .dk
    AddLanguage de .de
    AddLanguage el .el
    AddLanguage en .en
    AddLanguage eo .eo
    AddLanguage es .es
    AddLanguage et .et
    AddLanguage fr .fr
    AddLanguage he .he
    AddLanguage hr .hr
    AddLanguage it .it
    AddLanguage ja .ja
    AddLanguage ko .ko
    AddLanguage ltz .ltz
    AddLanguage nl .nl
    AddLanguage nn .nn
    AddLanguage no .no
    AddLanguage pl .po
    AddLanguage pt .pt
    AddLanguage pt-BR .pt-br
    AddLanguage ru .ru
    AddLanguage sv .sv
    AddLanguage zh-CN .zh-cn
    AddLanguage zh-TW .zh-tw
    
    LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW
    
    ForceLanguagePriority Prefer Fallback
    
    AddDefaultCharset UTF-8
    
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    
    AddHandler type-map var
    
    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
    
    Alias /error/ "/var/www/error/"
    
    <IfModule mod_negotiation.c>
    <IfModule mod_include.c>
        <Directory "/var/www/error">
            AllowOverride None
            Options IncludesNoExec
            AddOutputFilter Includes html
            AddHandler type-map var
            Order allow,deny
            Allow from all
            LanguagePriority en es de fr
            ForceLanguagePriority Prefer Fallback
        </Directory>
    <Directory /var/www/*/data/>
    	php_admin_flag engine off
    </Directory>
    
    </IfModule>
    </IfModule>
    
    BrowserMatch "Mozilla/2" nokeepalive
    BrowserMatch "MSIE 4.0b2;" nokeepalive downgrade-1.0 force-response-1.0
    BrowserMatch "RealPlayer 4.0" force-response-1.0
    BrowserMatch "Java/1.0" force-response-1.0
    BrowserMatch "JDK/1.0" force-response-1.0
    
    
    BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
    BrowserMatch "MS FrontPage" redirect-carefully
    BrowserMatch "^WebDrive" redirect-carefully
    BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
    BrowserMatch "^gnome-vfs/1.0" redirect-carefully
    BrowserMatch "^XML Spy" redirect-carefully
    BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully
    
    #
    # VirtualHost example:
    # Almost any Apache directive may go into a VirtualHost container.
    # The first VirtualHost section is used for requests without a known
    # server name.
    #
    #<VirtualHost *:81>
    #    ServerAdmin webmaster@dummy-host.example.com
    #    DocumentRoot /www/docs/dummy-host.example.com
    #    ServerName dummy-host.example.com
    #    ErrorLog logs/dummy-host.example.com-error_log
    #    CustomLog logs/dummy-host.example.com-access_log common
    #</VirtualHost>


  9. 29.03.2013, 07:04


    #9

    sm0kingk1lls вне форума


    Junior Member


    По умолчанию

    Код:

    proxy_read_timeout 120;
    proxy_connect_timeout 120;

    в конфиге nginx пробовали?
    iptables?
    Попробуйте поставить логирование на debug и отловить что в этот момент происходит

    Последний раз редактировалось sm0kingk1lls; 29.03.2013 в 07:10.


  10. 15.04.2013, 02:28


    #10

    hostdot.ru вне форума


    Junior Member


    По умолчанию

    Проблема была в том, что iptables забанил IP-адрес сервера и запросы не шли.

    Решение: добавил IP-адрес сервера в белый список iptables



Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
  • BB коды Вкл.
  • Смайлы Вкл.
  • [IMG] код Вкл.
  • [VIDEO] код Вкл.
  • HTML код Выкл.

Правила форума

Иногда при посещении отдельных страниц сайта мы сталкиваемся с тем, что на экране вместо желаемого контента появляется сообщение об ошибке с цифровым кодом. Для «непосвященного» пользователя это просто набор цифр, но на самом деле в этих цифрах заложена определенная информация. Все они группируются по видам причин возникновения сбоя. 

Сообщения, кодирующиеся в формате 5хх, говорят о проблеме на стороне сервера, например, когда невозможно выполнить запрос из-за нарушения связи между несколькими серверами. Ошибка 504 Gateway Time Out не является распространенной, но это не значит, что на нее не стоит обращать внимания, особенно владельцу сайта. Рассмотрим некоторые причины возникновения данной ошибки и способы ее устранения как на стороне обычного посетителя, так и администратором веб-ресурса.

Ошибка 504 Gateway Time Out – это код состояния HTTP, который появляется, когда в течение заданного периода времени один сервер не получает своевременный ответ от другого сервера, который действует как шлюз или прокси.

Описания ошибки могут иметь различную форму:

  • 504 Gateway Timeout nginx
  • Gateway Timeout Error
  • HTTP Error 504
  • 504 Gateway Time-out – The server didn’t respond in time
  • HTTP Error 504 – Gateway Timeout

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

Производительный хостинг в подарок при заказе лицензии 1С-Битрикс

Выбирайте надежную CMS с регулярными обновлениями системы и профессиональной поддержкой. А мы подарим вам год хостинга – специально для сайтов на 1С-Битрикс.

Заказать

Что делать посетителю сайта при возникновении ошибки 504 

Итак, вы столкнулись с появлением на экране сообщения «error 504». Не спешите уходить с сайта, ведь возникновение сбоя может говорить о неправильной работе вашего браузера или даже наличии более серьезных проблем на уровне пользовательского софта. Попробуйте произвести довольно простые действия, чтобы убедиться, что с вашим программным обеспечением и настройками все в порядке. 

  1. Перезагрузите проблемную страницу или текущий браузер. Если проблема устранилась и не повторяется вновь, особенно при посещении других сайтов, о ней можно просто забыть. При регулярном возникновении однотипных ошибок во время посещения разных ресурсов стоит покопаться в настройках собственного ПО поглубже.
  2. Зайдите на тот же самый сайт, где возникла ошибка сервера 504, используя альтернативный браузер. В случае, когда страница во время тестирования открылась корректно, обновите браузер, в котором случился сбой, до последней версии.
  3. Проверьте, как открываются страницы этого же сайта с другого компьютера или смартфона. Это позволит вам понять, не связано ли появление ошибки 504 с ПО конкретного устройства.
  4. При регулярном появлении HTTP ошибок, в т.ч. с кодом 504, очистите кэш браузера, удалите файлы cookies. Со временем в любом браузере накапливается много «мусора». Произведя очистку, вы поможете программе работать более корректно и даже быстрее.
  5. Произведите сброс настроек роутера или модема, отключив оборудование на некоторое время от сети. Данная операция вряд ли приведет к устранению ошибки 504, но может улучшить качество интернет-соединения. Провайдеры регулярно вносят изменения в настройки собственного софта, обновляют его. Иногда это приводит к конфликту в корректном взаимодействии пользовательского оборудования и серверов оператора. Перезагрузка устройства по питанию в большинстве случаев решает такие проблемы.
  6. Очистите кэш DNS. Данная операция кажется сложной для обычного пользователя, но на деле выполнить ее достаточно легко. Способ очистки зависит от вашей операционной системы, найдите соответствующий мануал в интернете.
  7. Для опытных пользователей подойдет рекомендация временно переключить DNS-сервер на Google Public DNS, что как минимум поможет определить, возник ли ошибочный код состояния HTTP по причине DNS проблемы. 

Если после проведения всех вышеозначенных рекомендаций любая ошибка, в т.ч. 504 Gateway Time Out, продолжает возникать регулярно, обратитесь в техподдержку проблемного интернет-ресурса. 

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

Решение проблем с появлением ошибки сервера 504 администратором веб-ресурса 

Некорректная работа сайта чаще всего просто раздражает посетителя и приводит к тому, что пользователь находит альтернативный ресурс. Для владельца сайта такие сбои могут носить более глобальные последствия. Поэтому очень важно своевременно обнаруживать баги и максимально быстро устранять их. Для раннего мониторинга стоит использовать все возможные инструменты: 

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

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

Почти все ошибки с кодом 5хх, возникающие из-за невозможности обработки определенного количества запросов, поступающих на сервер, решаются методом апгрейда железа (использованием высокопроизводительного хостинга) либо оптимизацией работы программного обеспечения. Второй способ зависит от вида движка, на котором создан конкретный сайт. При использовании условно-бесплатных программ (WordPress, OpeneCart и других) все проблемы придется решать на уровне администрирования, с привлечением конкретного веб-программиста, разработавшего данный сайт. Если баги возникают на платных платформах (1С-Битрикс, UMI.CMS, NetCat CMS), напишите об ошибке 504 Gateway Time Out в техподдержку разработчика. Отправить сообщение о проблеме следует и разработчикам платных скриптов, если они установлены на вашем сайте, и вы считаете, что сбои возникают по причине их некорректного исполнения. 

Вот некоторые причины, приводящие к возникновению ошибки 504 Gateway Time Out

  • Резкий скачок нагрузки на сайт вследствие поступления большого количества внешних запросов, вызванного DDoS-атаками или действиями вирусного ПО, пиковым посещением сайта, например, в момент проведения различных акций в интернет-магазине, или единовременной загрузкой на сайт большого объема контента (импорт информации из CSV- или XML-файлов).
  • Некорректная работа скриптов, плагинов и дополнений, конфликтующих как между собой, так и внутри.
  • Превышение лимита доступных ресурсов при использовании виртуального хостинга.

Еще одна возможная причина возникновения ошибки 504 – исполняемый скрипт не укладывается в отведенный лимит времени. Это бывает, когда скрипт обращается к другим сайтам либо просто выполняет тяжелую операцию, например, строит поисковый индекс.

Рекомендации по устранению ошибки 504 Gateway Time Out методами администрирования сайта

Ошибка 504 Gateway Time Out может быть вызвана недавними изменениями или обновлениями на сайте. Если после отката к состоянию, предшествующему изменениям, баг исчез, следует найти конкретное действие, повлекшее возникновение ошибки. Для этого необходимо проверить журнал ошибок соответствующей CMS. Пользователи WordPress могут включить журналирование ошибок в файле wp-config.php добавлением следующих строк: 

define( 'wp_debug', true );
define( 'wp_debug_log', true );
define( 'wp_debug_display', false )

Все возникающие варианты ошибок будут записаны в файле wp-contents/debug.log.

Для проверки работоспособности плагинов и расширений попробуйте отключить те, которые вызывают подозрение как источники возникновения ошибки 504. В первую очередь это касается устаревших скриптов, но причиной могут оказаться и обновления. Если проблема исчезла, далее следует найти некорректный плагин или дополнение и устранить или исправить его. Один из способов улучшения работы исполняемого скрипта – увеличить значение параметра PHP max_execution_time или облегчить скрипт.

При использовании CDN для более быстрого получения контента, в частности CloudFlare, который работает как CDN и как сервис предотвращения негативных последствий от DDoS, вы можете столкнуться с двумя типами ошибок 504. В случае возникновения проблемы на стороне CloudFlare лучшим решением будет связаться с поддержкой CloudFlare или отключить его. Второй вариант – когда сбой возникает на стороне хостинг-провайдера. В этой ситуации также необходимо обратиться в службу поддержки хостера.

Часто ошибку 504 можно видеть на серверах, где используется VPS-хостинг и установлен Nginx в качестве фронтенда и Apache в качестве бэкенда. Для устранения проблемы в Apache можно увеличить значение timeout по умолчанию в файле httpd.conf:

# Timeout: The number of seconds before receives and sends time out.

Timeout 600

Также увеличить лимит в max_execution_time в php.ini: 

После внесения изменений следует перезапустить Apache. Ошибка 504 Gateway Time Out должна исчезнуть.

Аналогичным образом проблема с появлением ошибки HTTP 504 решается пользователями Nginx. Попробуйте увеличить такие параметры в файле /etc/nginx/conf.d/timeout.conf:

proxy_connect_timeout 600;

proxy_send_timeout 600;

proxy_read_timeout 600;

send_timeout 600;

Также рекомендуется увеличить max_execution_time в php.ini:

Далее перезапустите Nginx и откройте сайт. 

Более простым решением устранения данной проблемы является использование панели управления сервером.

Данный способ позволяет администрировать настройки веб-сервера без использования консоли, один раз настроить их под ваш проект и больше не подключаться к серверу без острой необходимости.

Например, в бесплатной панели управления Vesta Control Panel достаточно внести изменения в раздел «Сервер» и навсегда забыть о возможности возникновения ошибок на сайте.

Ошибка ответа сервера 504 Vesta Control PanelИ далее внести соответствующие изменения.

Ошибка ответа сервера 504 Vesta Control Panel

Изменение php.ini в VestaCP

Аналогичным способом проблема устраняется и при использовании альтернативных панелей управления хостингом – Ajenti, CentOS Web Panel, ISPmanager и других.

Если вы считаете, что появление 504 Gateway Timeout вызвано превышением лимита использования ресурсов серверного железа, оптимальным решением будет аренда выделенного сервера или VPS. Когда ваш сайт уже размещен на виртуальном хостинге, но ни одна из рекомендаций не привела к исправлению error 504, обратитесь к хостинг-провайдеру. В этом случае подробно опишите причины, которые, как вы полагаете, привели к появлению сбоя.

Заключение

В данной статье мы рассмотрели основные причины возникновения ошибки HTTP 504 Gateway Timeout и популярные способы устранения неполадки. Уверен, некоторые администраторы веб-ресурсов сталкивались с подобными проблемами, выходящими за рамки приведенных примеров и рекомендаций.

Буду благодарен, если вы поделитесь своим опытом в комментариях.

Возможно, вам также будет интересно:

  • 504 get away time out ошибка
  • 504 dns look up failed ошибка
  • 503в ошибка что это
  • 503f ошибка рено меган
  • 503b ошибка яндекс браузер

  • Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии