Привет! Не давно мой сайт погас и на экране появилась надпись — 500 внутренняя ошибка сервера. Я как человек уже более или менее опытный в этих делах, быстро всё восстановил, сразу нашёл причину и устранил её. Важно всегда отдавать себе отчёт в том что вы делаете, понимаете ли вы то что вы делаете, есть ли у вас достаточно необходимой информации и т.д.
Конечно всё это приходит не сразу, а с опытом и для этого нужно постоянно учиться и практиковаться. И вы должны понимать, что сайт просто так не выходит из строя. Перед тем как сайт «гаснет» происходят определённые действия, вы или кто-то другой вносит какие-либо изменения на сайт. Как раз эти действия и становятся решающими. Вот список основных и самых распространённых причин вызывающих 500 ошибку:
500 внутренняя ошибка сервера
— Вы внесли какие-то изменения в исходный код сайта, чаще всего это делается по незнанию и необдуманно. Что-то случайно удалили или добавили не то, зацепили часть кода по неосторожности.
— Вы добавили какой-либо код в конфигурационный файл htaccess, который находится на сервере. Файл htaccess является очень распространенной причиной 500 ошибки. Любое неправильное действие выполненное в данном файле мгновенно выведет ваш сайт из строя.
— Вы установили на сайт плагин, который автоматически внёс изменения в файл htaccess. Такое то же часто бывает, есть плагины которые добавляют определённый код в файл htaccess. На wordpress это популярные плагины — All In One Seo Pack, Jetpack, Akismet, WP Super Cache, Yoast SEO и т.д. Ошибка может возникнуть из-за несовместимости.
— Вы установили на сайт плагин и он оказался несовместимым с вашим сайтом или с отдельной его частью. На wordpress такое часто бывает и проблема очень быстро решается. Нужно зайти в панель хостинга и удалить только что установленный плагин.
— Вы установили на сайт тему или шаблон, который оказался несовместимым с вашим сайтом или с отдельной его частью. Несовместимость может быть из-за устаревшей версии вашего сайта или шаблона который вы устанавливаете. Несовместимость может быть спровоцированна чем угодно, так как шаблоны создаются разными вебмастерами и с применением разных подходов и стилей. Любая часть кода может вызвать конфликт и несовместимость.
— Самая распространённая причина 500 ошибки, когда вы сами начинаете лезть в код сайта и что-то там химичить, добавлять, исправлять, пытаетесь что-то изменить, хотя абсолютно не понимаете что вы делаете. Как раз такая причина является самой опасной, если вы ещё после этого не помните где вы лазили и что меняли.
— Технические работы хостинга на сервере, о которых вас не предупредили. Такое то же возможно, но обычно качественные хостинг-компании предупреждают своих клиентов о предстоящих тех.работах на сервере. Но бывает и такое что сама хостинг компания не может предугадать таких событий, так как они разворачиваются спонтанно из-за сбоев на сервере или doos атак. На качественных хостингах такое редко бывает.
Как выявить 500 ошибку и быстро её устранить
На каждом сервере, а в первую очередь это касается сервера Apache, так как он самый распространённый, есть файл Error log, в котором записываются все ошибки сайта. После того как сайт выдаст 500 ошибку, в файле error log тут же отобразится данная ошибка и главное будет указана причина данной ошибки. Будет указано место ошибки (название файла и путь к файлу), будет указан номер строки в файле в которой допущена ошибка.
Поэтому в первую очередь вам нужно зайти в свою панель на хостинге cPanel либо любую другую панель. Путь к файлу error log в основном проистекает следующим образом: Диспетчер файлов — Public html — Error Log. Вам нужен файл error log который располагается в корневой директории вашего сайта, где находятся все основные файлы вашего сайта или CMS системы.
Откройте данный файл для редактирования и изменения, если файл не открывается то просто скачайте его на свой компьютер, нажав по нему два раза мышкой. Файл не получится открыть для редактирования, если он вырос в размерах более 1 мегабайта, в таком случае его нужно скачать на компьютер и всё.
Далее, откройте файл error log на своём компьютере с помощью блокнота обычного txt формата. Прокрутите страницу в самый низ, нас интересуют самые последние строки, в которых указана сегодняшняя дата на тот момент. В строке будет указано расположение файла, в котором произошла ошибка и номер строки в файле.
На скриншоте показан фрагмент файла error log с сайта на CMS WordPress. Поэтому тут сразу становится понятно, что ошибка произошла из-за темы сайта, которая располагается по адресу wp-content/themes/название темы/файл темы в котором произошла ошибка, on line 423 — номер строки в файле где возникает ошибка, конфликт или несовместимость.
Посмотрите в каком разделе вашего сайта и в каком файле произошла ошибка, так вы сможете понять в какой части сайта произошла ошибка и как её исправить.
— Если ошибка произошла из-за вашей темы или шаблона, то она очень просто решается. Откройте папку в которой находятся все темы или одна тема и переустановите тему. То есть, удаляете тему, а потом снова её загружаете, предварительно скачав её с официального сайта. Можно заменить только один файл темы, который вызывает ошибку.
— Если в файле error log отображается название плагина, то тут всё очень просто, удаляете плагин и всё готово.
— Если ошибка указывает на файл htaccess, то в таком случае, если вы не понимаете ничего в данном файле, лучше обратитесь в службу поддержки вашего хостинга, чтобы вам восстановили данный файл к исходным значениям.
— Если дело не в плагине, не в теме и не в файле htaccess и вы не помните и не знаете где вы лазили и что меняли, то конечно файл error log вряд ли вам поможет. В таком случае есть два варианта, 1 — обратиться к специалисту, 2 — восстановить сайт с помощью резервной копии, если таковая имеется. Возможно вам понадобится заменить всего один файл, название которого будет указано в файле error log и всё быстро решится.
Помните! Перед тем как вносить какие-либо изменения в код сайта, если вы плохо понимаете что вы делаете, СДЕЛАЙТЕ ПОЛНУЮ РЕЗЕРВНУЮ КОПИЮ ВАШЕГО САЙТА!