Андрей Смирнов
Время чтения: ~21 мин.
Просмотров: 2

Часть 3. протоколы http/https

Способ 1 — Ошибка 500 в WordPress из-за плагинов или тем

В большинстве случаев, ошибка 500 Internal Server Error возникает из-за установки или обновления плагинов или тем. Если вы уже знаете какой из плагинов мог вызвать данную проблему, вы уже на пол пути к её решению.

Способ 1.1 — Ошибка 500 в WordPress из-за обновления или установки плагина

Если страница перестала работать после установки или обновления плагина, вы можете починить её, просто отключив или удалив плагин. В зависимости от ситуации, существует два пути для достижения цели.

Отключение плагинов через панель управления WordPress

Если вы можете войти в  вашу панель управления WordPress, следуйте данным этапам:

  1. Войдите в вашу панель управления WordPress.
  2. Нажмите на Плагины → Установленные в левом меню навигации.
  1. Отключите проблемный плагин.
  1. Обновите сайт в браузере, чтобы проверить решена ли проблема.
  2. Если нет, отключите другой плагин и повторяйте данный процесс, пока все плагины не будут отключены (или сайт не заработает).
  3. Как только вы найдёте плагин, ответственный за появление ошибки, попробуйте переустановить его заново. Вы также можете поискать другие плагины на его замену или связаться с разработчиками плагина для уточнения информации о его работе на вашем WordPress.

Отключение плагинов WordPress через Файловый Менеджер или FTP

Существуют ситуации, когда ошибка не позволяет получить доступ к панели управления WordPress. В этом случае, вам придётся отключить или удалить плагин с помощью Файлового Менеджера в панели управления вашим хостингом или FTP-клиентом вроде FileZilla.

  1. Пройдите в корневой каталог вашего WordPress и войдите в папку wp-content/plugins.
  2. Найдите проблемный плагин и переименуйте его для отключения. К примеру, вы можете добавить .отключён в конец файла, чтобы не забыть об этом плагине. Если вы хотите удалить его полностью, просто удалите папку с плагином.
  1. После этого, обновите ваш сайт. В случае, если проблема остаётся, произведите данные действия для оставшихся плагинов до их полного отключения (или пока ваш сайт не заработает).
  2. Как только вы найдёте сломанный плагин, вы можете попытаться переустановить его, найти замену или связаться с разработчиками плагина для получения консультации.

Способ 1.2 — Ошибка 500 в WordPress из-за установки или обновления темы

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

Изменение темы с помощью панели управления WordPress

Если вы можете получить доступ к вашей панели управления, вот что вы должны предпринять:

  1. Перейдите в раздел Внешний вид → Темы.
  1. Выберите любую другую тему и нажмите кнопку Активировать.
  1. Как только вы закончите изменение темы, вы увидите подтверждающее сообщение со ссылкой на ваш сайт.

Изменение темы с помощью phpMyAdmin

Другой способ для изменения темы, это редактирование значений вашей базы данных MySQL через phpMyadmin, в панели управления вашим хостингом. Этот способ может быть полезен, если ваша панель управления WordPress не работает. Вот, что вы должны сделать:

  1. Найдите таблицу wp_options и откройте её.

ЗАМЕТКА! В зависимости от значений таблицы, выбранных вами в процессе установки, префикс таблиц не всегда будет wp_.

  1. Перейдите на Страницу 2.
  1. Найдите раздел template и stylesheet
  1. Узнайте название темы на которую вы хотите её поменять. Для этого перейдите в каталог  wp-content/themes с помощью Файлового Менеджера.
  1. Скопируйте название темы, которую вы хотели бы использовать. Далее, измените значения template и stylesheet в базе данных на название вашей новой темы. В данном примере, мы изменим тему twentyfifteen на twentysixteen

Теперь вы снова можете перезагрузить ваш сайт в браузере, и он загрузится с новой темой. Если ошибка 500 была связана с вашей старой темой, то это должно решить проблему. Вы можете попытаться переустановить вашу старую тему или связаться с разработчиком для получения информации о правильной установке темы для вашего WordPress.

Что обозначает ошибка 505?

Это серверная ошибка (как и все под номерами 5хх). С помощью нее сервер пытается сообщить, что он не поддерживает HTTP-протокол, который использует клиент. 

То есть в запросе клиента указана версия HTTP 1.1 или какая-нибудь еще более старая (типа HTTP 0.9). Ресурс с ней больше не работает или не хочет обрабатывать «устаревший» запрос. Отсюда и возникает ошибка. 

По идее, разработчики должны указать клиенту не только код ошибки, но и пояснить, почему она возникла. Объяснить, почему не поддерживается выбранный HTTP-протокол

Но это уже частности, которые не всегда берутся во внимание. Вебмастерам и администраторам на заметку, так сказать

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

Но это не единственный сценарий. То же справедливо и для владельцев сайта. Возможно, это они давно не обновляли программное обеспечение сервера. Поэтому ресурс не работает с новыми версиями протокола. Что тоже ведет к аналогичной ошибке. 

Ну или разработчики решили в угоду безопасности и прогресса попросту отказаться от всего, что старее HTTP 1.1. Поэтому свежий браузер может не пустить на старинный сайт. В любом случае отстает кто-то один. Нужно устранить эту несовместимость.

Ошибка 400

Bad Request

При переходе на сайт браузер может выдавать “400 Bad Request”. Это означает, что сервер обнаружил синтаксическую ошибку в запросе, который ввел пользователь. Однако подобная ошибка может появляться не только, когда вы вводите адрес сайта, но и, например, при входе в панель управления вашим сайтом. Причин возникновения может быть несколько:

  • блокировка браузера антивирусом;
  • блокировка брендмауэра Windows браузером;
  • большое количество файлов cookies и данных в сache;
  • перебои в работе интернета.

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

Блокировка браузера

  • Изучите настройки вашего антивируса в разделе под названием “Правила для приложений” или схожим с ним.
  • Проверьте, есть ли ваш браузер в списке, и каков уровень доверия к нему.
  • Повысьте уровень доверия к вашему браузеру, если он низкий.
  • Сохраните новые настройки и попробуйте снова зайти в панель управления.

Если ошибка сохраняется, то переходите к проверке следующей причины.

Блокировка брендмауэра Windows

  • Попробуйте отключить брендмауэр на время: меню Пуск — Панель управления — Система и безопасность — Брандмауэр Windows — Включение и отключение.
  • Очистите кэш и куки.
  • Обновите страницы с ошибкой.
  • Если проблема устранена, то для завершения добавьте в брандмауэр разрешенные программы: Пуск — Панель управления — Система и безопасность — Брандмауэр — Разрешение запуска программы через брандмауэр.

Если проблема осталась — продолжайте проверку.

Cache и cookies

  • Удалите cookies и очистите cache: нажмите Shift + Ctrl + Delete в то время, когда браузер открыт.
  • Удалите ненужные файлы.
  • Проверьте работу вашего браузера.

Перебои в работе интернета

  • Свяжитесь со своим интернет-провайдером и узнайте, проводятся ли у них какие-то работы.
  • Уточните, сколько времени займут работы.

5xx Ошибка сервера

Коды 5xx выделены для случаев неудачной работы на стороне сервера.
Эти ответы сервера часто отображаются, когда запросы пользователя не могут быть обработаны сервером по той или иной причине. Сервер должен иметь специальное сообщение для браузера, которое должно отображаться пользователю – оно уведомляет, что сервер (по какому-либо поводу) не в состоянии произвести обработку запроса.

500 Internal Server Error (Внутренняя ошибка сервера)
Этот статус сообщает о внутренней ошибке сервера, которая не совпадает с другими ошибками того же класса.
Этот код используется, если ресурс или ссылка создается на сервере (например, календарь в системе резервирования), который технически не существует как ссылка или доступный ресурс, но пользователь видите их как ссылки.

501 Not Implemented (Не поддерживается)
Сервер либо не понимает метод запроса, либо не поддерживает инструкции, нужные, чтобы обработать обращение.
Вы можете столкнуться с указанным кодом 501, когда сервер не имеет поддержки стандартных протоколов запросов, среди которых GET, OPTIONS, HEAD, POST и т. д.

502 Bad Gateway (Плохой шлюз)
Пользователь увидит 502 код, если сервер, работает в качестве шлюза или прокси-сервера, и он получил недопустимый ответ от сервера верхнего уровня.
Когда используется подобный код? Обычно, когда сервер высшего уровня и прокси / шлюз не согласованы с протоколами, которые представленными в обращении. Как результат появляется ошибка обмена данных.

503 Server Unavailable (Сервер недоступен)
Код 503 означает, что возникли технические причины, из-за которых сервер на определенное время не способен обработать набор данных.
Его допустимо использовать в случаях, когда на сайт есть повышенный спрос, но у сервера нет возможности обрабатывать все входящие запросы.

504 Gateway Timeout (Тайм-аут шлюза)
Сервер как шлюз или прокси-сервер не дождался ответа от вышестоящего сервера, чтобы завершить текущий запрос.
Когда этот код может применяться? Когда прокси или шлюз используют как канал передачи данных, а два сервера при этом ожидают на ответ.

505 HTTP Version Not Supported (Версия HTTP не поддерживается)
Сервер не поддерживает версию HTTP протокола, обозначенную при обращении к нему.
Где используется такой код? В тех случаях, которые были указаны выше! Если HTTP протокол более старый, чем нужно серверу, и, как следствие, он не поддерживается.

506 Variant Also Negotiates (Вариант также перенаправляется)
Такой ответ сервера последует, если при оформлении ошибочной конфигурации выбранный параметр указывает сам на себя, что приводит к прерыванию процесса связи.
Когда он применяется? Когда сервер настроен неправильно и не может обработать запрос.

507 Insufficient Storage (Недостаточно места)
Ошибка 507 имеет место, когда сервер не может разместить данные, поскольку для текущего запроса недостаточно пространства.
Этот код может быть применен, когда сервер загружен в полном объеме, а пользователь запрашивает ресурс, который уже имеется в наличии. Трудность здесь заключается в том, что на сервере нет места для хранения отправленных в запросе данных, чтобы отправить запрашиваемый ресурс.

509 Bandwidth Limit Exceeded (Превышена пропускная способность)
Этот код ответа используется, когда веб-сайт лимитирует ограничение трафика, предназначенное для него.
Когда используется этот статус? Когда Apache запускает правильное расширение, а ISP имеет пропускную способность, которая может быть скоро превышена. Здесь имеется несколько форм ограничения.

510 Not Extended (Нет расширения)
Код 510 появляется, когда на сервере нет расширения, которое хочет использовать клиент. Когда этот код появляется? Когда сервер требует больше данных в запросе.

511 Network Authentication Required (Требуется аутентификация сети)
Этот статус-код демонстрируется, если клиенту следует сначала авторизоваться в сети, к примеру, необходимо ввести пароль для платного доступа в сеть Интернет.
Когда используется этот код? Когда пользователь сначала должен дать свое согласие на условия использования, прежде чем он получит доступ к Интернету (например, к Wi-Fi точке доступа).

Устранение ошибки 401 администратором веб-ресурса

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

  • Обращение в службу поддержки хостинга сайта. Как и в случае возникновения проблем с провайдером, лучше всего подробно описать последовательность действий, приведших к появлению ошибки 401, приложить скриншот.
  • При отсутствии проблем на стороне хостинг-провайдера можно внести следующие изменения в настройки сайта с помощью строки Disallow:/адрес проблемной страницы. Запретить индексацию страницам с ошибкой в «rоbоts.txt», после чего добавить в файл «.htассеss» строку такого типа:
Redirect 301 /oldpage.html http://site.com/newpage.html.

Где в поле /oldpage.html прописывается адрес проблемной страницы, а в http://site.com/newpage.html адрес страницы авторизации.

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

  • Если после выполнения предыдущих рекомендаций пользователи при попытках авторизации все равно видят ошибку 401, то найдите на сервере файл «php.ini» и увеличьте время жизни сессии, изменив значения следующих параметров: «session.gc_maxlifetime» и «session.cookie_lifetime» на 1440 и 0 соответственно.
  • Разработчики веб-ресурсов могут использовать более сложные методы авторизации и аутентификации доступа для создания дополнительной защиты по протоколу HTTP. Если устранить сбой простыми методами администрирования не удается, следует обратиться к специалистам, создававшим сайт, для внесения соответствующих изменений в код.

Хотя ошибка 401 и является проблемой на стороне клиента, ошибка пользователя на стороне сервера может привести к ложному требованию входа в систему. К примеру, сетевой администратор разрешит аутентификацию входа в систему всем пользователям, даже если это не требуется. В таком случае сообщение о несанкционированном доступе будет отображаться для всех, кто посещает сайт. Баг устраняется внесением соответствующих изменений в настройки.

Давайте перейдем к решениям или как исправить err ssl protocol error google chrome?:

Решение № 1 — правильная дата и время.

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

Вам нужно просто переставить дату, время и регион на верные значения. На разный операционных системах, время устанавливается по разному. Я думаю, вы легко найдете эту функцию в настройках.

Решение № 2 — Изменение настроек QUIC

Решение работает для Windows, Mac и Android:

Процесс отключения одинаков для всех устройств Windows, Mac и Android, просто следуйте инструкциям:

Решение № 3 — Использование Https

Решение работает для Windows, Mac и Android:

HTTPS
это протокол для безопасной связи в сети, который обычно используется в Интернете. Таким образом, вы можете также попытаться открыть веб-сайт, изменив его URL-адрес
под протокол HTTPS.

Попробуйте ввести в адресную строку https
://www.facebook.com вместо использования http
://www.facebook.com (URL фэйсбука был использован для примера)

Решение № 4 — Изменение настроек безопасности.

Можно попробовать изменить настройки безопасности работы в интернете. Возможно именно они блокируют доступ к сайту. И так, что нужно сделать:

Решение № 5 — Изменение настройки брандмауэра

Решение работает только для Windows (иногда на Mac тоже):

В некоторых случаях брандмауэр блокирует подключение к интернету. Отключение брандмауэра может решить проблему.

Решение работает только для Windows:

Большая часть веб-сайтов использует SSL v2.0
или 3.0.
По умолчанию браузер не использует SSL 2.0
и SSL 3.0
. Таким образом, мы можем изменить стандартные настройки браузера, для исправления ошибки. Для выполнения этой процедуры следуйте инструкциям, приведенным ниже.

Решение № 7 — Сбросить состояние SSL

Решение работает только для Windows:

В основном очистку кеша SSL в ручном режиме не требуется выполнять изо дня в день. Это делают, когда возникают какие либо ошибки с подключением.

Таким образом, чтобы очистить кеш SSL:

  • Перейдите в Настройки интернета
    с панели управления Windows
    и нажмите на вкладку .
  • После того, как то вы найдете название параметра « Очистить SSL
    », просто нажмите на эту кнопку.

Коды ошибок сайтов

В таблице перечислены наиболее общие типы ошибок HTTP, отображаемые программой Internet Explorer.

Дополнительную информацию о протоколах HTTP, кодах ошибок и их причинах можно найти на сайте Консорциума World Wide Web (W3C).

Сообщение об ошибке HTTP

Её значение

Не удалось найти веб-страницу (HTTP 400)

Программе Internet Explorer удалось подключиться к веб-серверу, однако из-за ошибки в адресе (URL) веб-страницу найти не удалось. Это сообщение об ошибке часто отражается вследствие введения ложного адреса сайта. Убедитесь, что адрес введен правильно и попробуйте подключиться еще раз.

Сайт отказал в показе этой страницы (HTTP 403)

Программе Internet Explorer удалось подключиться к веб-серверу, но она не имеет разрешения на отображение этой веб-страницы.

Обусловить появление этой ошибки могут разные причины:

  • Требуется разрешение администратора сайта на просмотр страницы или веб-сервер не принимает публичные запросы на отображение веб-страницы. Если вы уверены, что имеете доступ к сайту, обратитесь к администратору этого сайта.
  • Веб-страница, которую вы пытаетесь просмотреть, создана программой (вроде «корзины для покупок» или поисковой службы), расположенной на сервере в папке, неправильно настроенной администратор.
  • Введен адрес главной страницы сайта, на котором отсутствует страница по умолчанию. Также вероятно, что на сайте не разрешается создавать список файлов каталога, который позволяет просматривать файлы в веб-папке.

Не удалось найти веб-страницу (HTTP 404)

Программе Internet Explorer удалось подключиться к веб-серверу, однако веб-страницу найти не удалось. Эта ошибка иногда вызвана тем, что веб-страница временно недоступна (в таком случае следует попытаться открыть ее позже).

Сайту не удалось отобразить страницу (HTTP 405)

Программе Internet Explorer удалось подключиться к веб-серверу, однако загрузить веб-страницу на компьютер не удается. Ошибка возникает из-за проблем, связанных с программированием веб-страницы.

Internet Explorer не удалось прочитать этот формат веб-страницы (HTTP 406)

Программе Internet Explorer удалось получить информацию с сайта, однако формат этой информации браузер не поддерживает.

Сайт перегружен и не может отобразить эту веб-страницу (HTTP 408 или 409)

Сервер долго отображает веб-страницу или ее одновременно пытаются открыть много пользователей. Попробуйте подключиться позже.

Веб-страница уже не существует (HTTP 410)

Программе Internet Explorer удалось подключиться к веб-сайту, но веб-страницу найти не удалось. В отличие от ошибки 404, эта ошибка постоянная, она вызвана действиями администратора сайта. Иногда страницы используются для предложений, ограниченных во времени, или с целью распространения рекламной информации.

Сайту не удалось отобразить страницу (HTTP 500)

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

Сайта не может отобразить веб-страницу (HTTP 501 или 505)

Ошибка 501 (HTTP 501 – Не реализовано) информирует о том, что данный веб-сайт не настроен на отображение содержимого, запрошенного браузером. Например, браузер спрашивает видеофайл с расширением AVI, однако на сайте ведется поиск HTML-страницы.

Ошибка 505 (HTTP 505 – Версия не поддерживается) означает, что веб-сайт не поддерживает версию протокола HTTP, с помощью которого браузер осуществляет запрос веб-страницы.

Ошибки HTTP отображаются на веб-сайтах двумя способами: путем показа специальной страницы или отправки простого кода ошибки программе Internet Explorer. Если веб-сайт информирует об ошибке с помощью специальной веб-страницы, она всегда отображается в окне Internet Explorer.

Если же вместо специальной страницы веб-сайт посылает простой код ошибки, Internet Explorer распознает его и выводит сообщение об ошибке, кроме кода оно содержит определенную информацию об ошибке (такие ошибки также известны как понятные сообщения об ошибках).

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

Отключение сообщений об ошибках HTTP

  1. Откройте браузер Internet Explorer.
  2. Нажмите кнопку Сервис и выберите Свойства обозревателя.
  3. Откройте вкладку Дополнительно и перейдите к разделу Просмотр.
  4. Снимите флажок Показывать подробные сообщения об ошибках HTTP и нажмите кнопку ОК.

Как исправить 505 HTTP Version not Supported?

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

Что можно сделать на стороне клиента?

Начнем с основ.

Обновить программное обеспечение

Обновление приложений, драйверов, системы и прочих кусков «софта» нередко решает проблемы. Могу посоветовать попробовать обновление и в этой ситуации. 

  • Скачайте обновление операционной системы.

  • Обновите браузеры и все используемые веб-приложения. Так можно будет сразу отмести в сторону проблемы с устаревшим ПО на стороне клиента.

  • Переустановите протокол NET.Framework.

  • Установите новые драйвера для сетевых устройств.

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

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

Удалить мусор из браузера или переустановить его

Возможно, проблема в браузере. Попробуем удалить весь накопившийся мусор, включая куки-файлы и кэш. 

В браузере Google Chrome это делается так:

  • Открываем настройки браузера.

  • Переходим в раздел «Конфиденциальность и безопасность».

  • Выбираем «Файлы cookie и другие данные».

  • Нажимаем на кнопку «Удалить все».

В других браузерах немного отличаются названия меню, но принцип остается тот же.

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

Просить о помощи интернет-провайдера

Если код 505 наблюдается во всех браузерах, во всех интернет-приложениях и на каждом сайте, то следует обратиться за помощью к провайдеру. Вероятно, проблема где-то на его стороне, и мучить браузеры с операционной системой вовсе не стоит. 

Ничего не помогло? У провайдера все без эксцессов? Браузер новый, а один из сайтов все равно выдает 505 ошибку? Виноваты держатели ресурса.

Как исправить ошибку на стороне сервера?

С клиентом разобрались, теперь переходим к более вероятному виновнику появления сбоев и пробуем устранить ошибку.

Обновляем программное обеспечение сервера

Браузеры уверены в том, что существующие интернет-ресурсы поддерживают HTTP версии 1.1 и новее. Ваш не в их числе? Пора исправляться. Пора бы уже обновить и прокачать свой ресурс, приведя сайт в рабочее состояние.

Перенастраиваем сервер

Даже на относительно новых серверах могут быть выставлены неправильные настройки. Взгляните на то, какие запросы может принимать ваш сайт. Какие требования он предъявляет к каждому запросу. Возможно, он настроен так, что не готов принимать запросы от браузеров, требующих протокол старше 0.9.

Меняем хостинг

Ладно, необязательно сразу так грубо и резко. Для начала обратитесь в отдел технической поддержки. Вам наверняка могут там помочь. Если нет, то смело переезжайте на какой-нибудь внятный хостинг. Например, на Timeweb. Сможете без проблем перенести все ресурсы. Получите устойчивый к сбоям и падениям хостинг, грамотную техподдержку, избыток ресурсов. Все полезное и нужное.

Это, пожалуй, все. Теперь вы знаете, что означает ошибка 505 и какие меры можно предпринять, чтобы ее устранить. Главное, сделать это побыстрее, чтобы не мучить и себя, и посетителей ресурса (если вы его владелец).

Как исправить 500 internal server error Nginx

Дословно Internal server error означает внутренняя ошибка сервера. И вызвать её могут несколько проблем. Вот основные из них:

  • Ошибки в скрипте на PHP — одна из самых частых причин;
  • Превышено время выполнения PHP скрипта или лимит памяти;
  • Неправильные права на файлы сайта;
  • Неверная конфигурация Nginx.

А теперь рассмотрим каждую из причин более подробно и разберем варианты решения.

1. Ошибка в скрипте PHP

Мы привыкли к тому, что если в PHP скрипте есть ошибки, то сразу же видим их в браузере. Однако на производственных серверах отображение сообщений об ошибках в PHP отключено, чтобы предотвратить распространение информации о конфигурации сервера для посторонних. Nginx не может отобразить реальную причину ошибки, потому что не знает что за ошибка произошла, а поэтому выдает универсальное сообщение 500 internal server error.

Чтобы исправить эту ошибку, нужно сначала понять где именно проблема. Вы можете включить отображение ошибок в конфигурационном файле php изменив значение строки display_errors с off на on. Рассмотрим на примере Ubuntu и PHP 7.2:

Перезапустите php-fpm:

Затем обновите страницу и вы увидите сообщение об ошибке, из-за которого возникла проблема. Далее его можно исправить и отключить отображение ошибок, тогда все будет работать. Ещё можно посмотреть сообщения об ошибках PHP в логе ошибок Nginx. Обычно он находится по пути /var/log/nginx/error.log, но для виртуальных доменов может настраиваться отдельно. Например, смотрим последние 100 строк в логе:

Теперь аналогично, исправьте ошибку и страница будет загружаться нормально, без ошибки 500.

2. Превышено время выполнения или лимит памяти

Это продолжение предыдущего пункта, так тоже относится к ошибкам PHP, но так, как проблема встречается довольно часто я решил вынести её в отдельный пункт. В файле php.ini установлены ограничения на время выполнения скрипта и количество оперативной памяти, которую он может потребить. Если скрипт потребляет больше, интерпретатор PHP его убивает и возвращает сообщение об ошибке.

Также подобная ошибка может возникать, если на сервере закончилась свободная оперативная память.

Если же отображение ошибок отключено, мы получаем error 500

Обратите внимание, что если время ожидания было ограничено в конфигурационном файле Nginx, то вы получите ошибку 504, а не HTTP ERROR 500, так что проблема именно в php.ini

Чтобы решить проблему увеличьте значения параметров max_execution_time и memory_limit в php.ini:

Также проблема может быть вызвана превышением других лимитов установленных для скрипта php. Смотрите ошибки php, как описано в первом пункте. После внесения изменений в файл перезапустите php-fpm:

3. Неверные права на файлы

Такая ошибка может возникать, если права на файлы, к которым обращается Nginx установлены на правильно. Сервисы Nginx и php-fpm должны быть запущены от имени одного и того же пользователя, а все файлы сайтов должны принадлежать этому же пользователю. Посмотреть от имени какого пользователя запущен Nginx можно командой:

Чтобы узнать от какого пользователя запущен php-fpm посмотрите содержимое конфигурационного файла используемого пула, например www.conf:

В моем случае это пользователь nginx. Теперь надо убедится, что файлы сайта, к которым вы пытаетесь обратиться принадлежат именно этому пользователю. Для этого используйте команду namei:

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

Этой командой мы меняем владельца и группу всех файлов в папке на nginx:nginx. Добавить права на чтение для всех пользователей для каталога можно командой chmod. Например:

Далее все должно работать. Также, проблемы с правами может вызывать SELinux. Настройте его правильно или отключите:

Как избежать ошибок при составлении и отправке писем

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

Самый простой способ это понять – отправить тестовое сообщение на свой ящик. Затем следует протестировать его отправку и получение, используя разные внешние почтовые сервисы: gmail, yandex, mail, rambler и другие. Если сообщение получено, следует ответить на него, проверив корректность исполнения команды «RE» вашим почтовым сервером и принятие ответа условным отправителем.

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

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

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

В моей практике был случай, когда никак не удавалось добиться получения моей электронной корреспонденции одним из сотрудников компании «Лукойл». Письма я отправлял самые простые, используя корпоративный ящик. Только после того, как мой респондент обратился в IT-службу своего предприятия, выяснилось, что данный адрес находится в блэк-листе. Попал он туда из-за каких-то ошибок, допущенных моим предшественником. Понадобилось больше недели, чтобы адрес включили в «белый список». Все это время письма, высылаемые с личного mail@yandex.ru, доходили без проблем.

Полезно: Почему не приходят письма с сайта. Пример частного случая.

Рейтинг автора
5
Материал подготовил
Максим Иванов
Наш эксперт
Написано статей
129
Ссылка на основную публикацию
Похожие публикации