Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Zero108

Не работает сайт из-за ошибки 504 nginx (timeout)

Recommended Posts

Внезапно подкралась проблема. Отключил публичную часть. Восстанавливаю базу данных из резервной копии (иначе вообще сайт не работает). Около двух минут работает, потом начинаются проблемы. Админка так и не открывается - 504 nginx, а на фронте сначала 504, а потом контент отдается неполностью. Кеш в системе хранится в mysql, процессы для сайта выполняются одной строкой каждую минуту в кроне, кеширование также настроено в админке сайта через мемкешед.

 

Обратился к специалисту по настройке серверов. Он проверил логи и написал:

 

[Thu Dec 12 03:14:10.927000 2019] [php7:error] [pid 10386] [client 52.57.30.158:36746] PHP Fatal error: Maximum execution time of 120 seconds exceeded in <путь>/system/3rd_party/JShrink/Minifier.php on line 279

 

Ну, это какая-то приблуда которая что-то там минифицирует. А ошибка возникает когда за 120 секунд скрипт не успевает принять в обработку всю строку из которой надо выбрать только 1 символ. Там функция $char = substr($this->input, $this->index, 1);

 

Т.е. записать в $char то, что является подстрокой от $this->input начиная с $this->index и длиной в 1 символ

 

https://www.php.net/manual/ru/function.substr.php

 

В настоящее время не могу даже отключить сторонние плагины и приложения в админке, либо сбросить кеш с помощью стороннего плагина в админке. Сразу ошибка 504. Из аминки могу пытаться что-то отключать, но не спасает. При этом дикая нагрузка на http, если смотреть команду top в консоли, именно от этого сайта.

 

Как решить проблему?

 

4.4.7.

Edited by Zero108

Share this post


Link to post
Share on other sites

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

 

В system logs не могу сейчас заглянуть, админцентр недоступен. А сразу после восстановления резервной копии ошибок нет. Могу дать доступ к папке сайта по ssh. Там же есть и логи апача.

Edited by Zero108

Share this post


Link to post
Share on other sites

Проблема решена переездом на 4.4.9. Установщик выдал, что директории

/applications

/plugins

/uploads/logs

имели права 755, а для установщика нужно было 777.

 

Также недавно ставили на этот же пхп 7.1.33 другой сайт, для которого опция mbstring.func_overload имела значение 2 в обязательном порядке. Установщик выдал, что нужно поменять эту настройку на 0:

 

The PHP configuration has mbstring.func_overload set with a value higher than 0. You should contact your hosting provider or system administrator to disable Multibyte function overloading.

 

Сделали доступным для пользователя этот параметр, потом поменяли обработчик на CGI и выставив 0 в настройках пхп в ISP manager.

 

Возможно, из-за этой переменной неправильно работал сайт, так как видимые проблемы начались как раз после установки параметра mbstring.func_overload равным 2.

Edited by Zero108

Share this post


Link to post
Share on other sites

Возможно, из-за этой переменной неправильно работал сайт, так как видимые проблемы начались как раз после установки параметра mbstring.func_overload равным 2.

Есть несколько тем по этому поводу.

Даже Ваша

Share this post


Link to post
Share on other sites

Ага, тема семилетней давности. Для Битрикса вот значение должно быть 2. А для IPB подавай 0. Кто же знал то и помнил?!))

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...