Одна из самых популярных и при этом не всегда логирующаяся ошибка apache2 — «Internal Server Error». В этой статье разберу возможные причины и решения из интернета и личного опыта. Иногда эта ошибка весьма не очевидна.
Все ситуации описаны для операционной системы Ubuntu Linux 22.10.
Ну и, конечно, первое, что вы должны сделать это попробовать перезапустить службу.
sudo systemctl restart apache2
Если это не помогло, то двигаемся дальше.
Разработчики и люди, профессионально работающие с веб-приложениями, боятся 500 Internal Server Error. Оптимальный способ её устранения зависит от сервера и того, что на нём запущено. В данной статье приводятся советы по диагностике и исправлению .
Важно помнить, что эта ошибка происходит на стороне сервера. Это значит, что , выполняемый на стороне клиента, а также или любые другие запущенные в браузере объекты, не могут быть причиной, по которой возникает ошибка 500 Internal Server Error. Само название (Internal Server Error – ‘внутренняя ошибка сервера’) говорит о том, что ошибка происходит на сервере.
Многие пользователи устанавливают на свой сервер популярные , такие как , , и они не должны вызывать , если всё настроено правильно. Однако она всё равно всплывает – из-за несовместимости версий, некачественных установок или сбоя прав доступа на сервере.
Вот некоторые распространённые проблемы, которые могут вызывать подобную ошибку в часто используемых CMS:
- Если вы только что обновили движок до новой версии, вероятно, обновление прошло с ошибками и необходимо провести его повторно. Скорее всего, на сайте разработчика есть инструкции, как это правильно сделать.
- Если вы только что активировали новый плагин или новую тему, стоит попробовать отменить эти изменения. Даже профессионально написанные плагины могут конфликтовать с другими и вызывать 500 Internal Server Error nginx
- Если вы обновляли , старые плагины и темы могут быть с ней несовместимы. Единственное, что можно сделать в таком случае — отключать их по очереди, пока не исчезнет.
- Неправильно заданные права доступа на сервере или ошибки в файле . Серверу не удаётся получить доступ к скриптам, файлам и другим ресурсам, поэтому он выдаёт ошибку.
Когда причиной, по которой возникает ошибка 500 Internal Server Error являются скрипты и плагины, лучше всего искать ответы на сайтах их разработчиков.
Другой причиной по которой может возникнуть ошибка 500 Internal Server Error может стать разработка и тестирование собственных скриптов.
Чтобы справиться с такой ошибкой, попробуйте следующие решения:
- Настройка прав на сервере: часто неверная настройка прав доступа к файлу или папке приводит к тому, что сервером выдаётся ошибка 500 Internal Server Error. Из-за того, что ему не удаётся запустить скрипт. Выясните, какие права должны быть настроены, и выставьте их соответствующим образом.
- Превышено время ожидания: возможно, истекло время ожидания ответа от PHP или другого серверного скрипта. Это происходит из-за того, что недоступен определённый ресурс или коде была допущена ошибка, запускающая бесконечный цикл.
- Превышено время ожидания соединения с сервером: если сервер был занят, перезагружался или потерял соединение, скрипт может выдать ошибку 500 Internal Server Error. Возможно, в следующий раз ошибки не будет. Но если ошибка появляется при тестировании, велика вероятность того, что она встретится и пользователям.
- Ошибки в файле .htaccess: в некоторых случаях может вызывать код, прописанный в файле .
- Ошибки в скрипте: если ошибку выдаёт скрипт, можете запросить у него подробную информацию об ошибке. К примеру, в можно включить вывод ошибок на экран или в лог-файл, добавив директиву . По умолчанию среда выполнения может скрывать ошибки, но это не очень удобно для отладки программы.
В некоторых случаях у разработчиков нет полного контроля над сервером.
Если скрипт запускается на сервере сторонней организации, она может помочь вам в следующем:
- Предоставить документацию о своём сервере и возможных причинах . В зависимости от используемой операционной системы и настройки оборудования, данная ошибка может возникать по разным причинам.
- Попросите службу поддержки хостинга посмотреть лог-файлы с ошибками — системный администратор сможет определить, был ли сервер во время возникновения ошибки загружен или вовсе «».
Ошибка 500 Internal Server Error — ? В большинстве случаев причины возникновения ошибки 500 легко исправляются. Проблема заключается в том, что без конкретной информации определение причины возникновения сбоя усложняется. Легче всего справиться с ошибкой, когда разработчик выяснит, что изменилось перед возникновением ошибки.
Не забывайте, что произошедшие изменения могли быть осуществлены и другими людьми — например, администратором сервера. Если же ничего не менялось, вероятно, сам сервер стал причиной возникновения ошибки из-за несовместимости программного обеспечения или проблем с производительностью.
- What Causes the Internal Server Error on Minecraft?
- Before you start:
- Solution 1: Delete the UUID folder
- Solution 2: Delete installed Mods
- Solution 3: Delete installed Plugins
- Solution 4: Close background applications
- Solution 5: Edit game’s JSON file
- Solution 6: Update Minecraft
- Solution 7: Reinstall Minecraft
- Переустановка apache2
- Ошибка в коде вашего веб-приложения
- Права доступа
- 2.1. Владелец файлов
- 2.2. Права файлов
- 2.3. Веб-приложение работает с файлами системы
- Конфигурация
- 1.1. Ошибка конфигурации веб-приложения
- 1.2. Старый конфигурационный файл
What Causes the Internal Server Error on Minecraft?
- In some cases, the log files that store the login data for a server might’ve been corrupted due to which it might not have properly registered the persons’ login on the server due to which the internal server error is being triggered on Minecraft.
- In some situations, the mods installed on your game might actually be interfering and preventing some important game files from running properly due to which the internal server error is being triggered. It is best to just check which mods are faulty and are hindering your game from working properly by following the methods below.
- It is also possible that you have installed some plugins on your computer that are faulty and due to that, you are facing issues while logging in to the Minecraft server. Therefore, try removing any faulty plugins to fix the Internal Server Error on Minecraft.
- In some rare occasions, background applications can also prevent Minecraft from being able to properly register with the game servers due to which this issue might be triggered. Therefore, it is also wise to diagnose for any rogue background applications.
Now that you are familiar with most of the reasons behind this particular issue, we will be moving on towards implementing the fixes.
Before you start:
- Take the power adapter of your router out of the socket and wait for it to shut down completely.
- After waiting for a couple of minutes, power cycle the router by inserting its power adapters into the socket and wait till it acquires full signals.
- Sometimes, this error might occur if the Minecraft servers are under maintenance, If this is the case, then the solution is beyond your control. You can check the server status by visiting the Minecraft server website.
Solution 1: Delete the UUID folder
- Open up the server’s log and note down the “UUID” of the person who encountered the error. This UUID will most probably be written in the first line.
- Now log in to your server and navigate to the “Server Files”.
- Now proceed to the “World” and choose “Players”.
- Here, delete the person’s user name and UUID who has encountered the Internal Server Error.
- Now restart your PC and connect to the server to check if you come across minecraft internal server error again.
Note: If you don’t want to permanently delete the player who encountered the error, just put them in “Jail” and after they join the server, simply “Unjail” them.
Solution 2: Delete installed Mods
This error might trigger due to some incompatible mods installed on your computer. If you have several different mods installed on your PC, then it is a hectic task to locate the faulty mod and delete it to resolve the issue. So, the most efficient approach is to disable all the mods and enable them one by one to check which one is the backbone of the error. A method to disable the mods in Minecraft is indexed below:
- Login to the Minecraft’s “Control Panel” and stop your server.
- From the “File” menu, select “FTP File Access” and enter your FTP password.
- From the “Server folder” list, click on the “Mods” folder.
Choosing Mods - Now select the mod you want to disable and click on the “Rename” button at the top of the page.
- Now add “.disable” at the end of the mod name. (For Example: change “Baubles.jar” to “Baubles.jar.disable”).
Renaming mods - Now “Apply” the changes and exit your FTP connection.
- Restart your server and check whether the minecraft internal server error pops up again.
Solution 3: Delete installed Plugins
- Press “Win + R” on the keyboard to open the Run box and search for “%appdata%”.
Typing in %appdata% - Now open the “Minecraft” folder and then double-click on the “Plugins” folder to open it.
- Select all the files in the “Plugin” folder and hit the “Delete” key on the keyboard to delete all the installed plugins.
- After deleting the plugins, login to your Minecraft account and check if you encounter the internal server error minecraft again while connecting to a server.
Solution 4: Close background applications
- Press the “Ctrl + Shift + Esc” keys simultaneously on the keyboard to open the “Task Manager”.
- Navigate to the “Processes” tab, select all the unwanted processes that might be bandwidth-intensive, one by one, and click on the “End Task” button.
Ending background applications - When the unwanted applications are closed, launch Minecraft on your PC and proceed to connect to a server to check if you encounter this error again.
Solution 5: Edit game’s JSON file
- Navigate to the “stats” folder in the game’s server and double-click on the JSON file to open it.
- Now scroll down in the file and delete the “stat.killEntity.EntityHorse : 3” entry.
- Save the file and launch Minecraft again to check if the internal server error is rectified.
Solution 6: Update Minecraft
- Press “Windows key + R” on the keyboard to open the run box and search for “%appdata%”.
Typing in %appdata% - Now locate and double-click on the “.minecraft” folder.
- Navigate to the “.version” folder, press “Ctrl + A” from the keyboard, and hit the “Delete” key.
- When the deletion process is complete, launch Minecraft to automatically detect the changes and update itself.
Solution 7: Reinstall Minecraft
- Press “Windows key + R” from the keyboard to open the run box and search for “appwiz.cpl”.
Typing “appwiz.cpl” - Now locate Minecraft from the list of Softwares installed on your computer, right-click on it and select “Uninstall”.
Uninstalling Minecraft - Now launch a browser and download Minecraft from its official website.
- Double-click on the downloaded executable file and follow the on-screen instructions to install the game on your PC.
- When the game has been installed successfully, launch it and try to connect to a server and most probably the internal server error minecraft issue would’ve been resolved uptil now.
- Press “Ctrl + Shift + Esc” keys on the keyboard to open the task manager and navigate to the “Process” tab.
- Here, locate a process related to “JAVA”. If you find that process, right-click on it and set its priority to “High”.
- Now press “Windows key + R” on the keyboard to open the run box and search for “%appdata%”.
Typing in %appdata% - Navigate to the “.minecraft” folder and open the “TooManyItems” file with notepad.
- In this file, make sure that the “Enable” entry is set to “True”.
- Launch Minecraft again and check if the error has been fixed.
Back to top button
Переустановка apache2
Если вам не помогли все вышеуказаные действия, то возможно проблема с самим apache2, тогда нужно попробовать его переустановить:
sudo apt update
sudo apt install --reinstall apache2
Если вы не решили свою проблему, то вот еще возможные причины и направления для дальнейшего поиска.
Ошибка синтаксиса .htaccess. Если вы используете Apache в качестве веб-сервера, то, скорее всего, у вас есть .htaccess файл в корневом каталоге вашего сайта. Неверный синтаксис или несуществующая директива модуля может привести к ошибке 500.
Проблемы с плагинами и темами. Если вы используете WordPress или аналогичную CMS, ошибка 500 может появиться после обновления или изменения плагина или темы.
Проблемы с сервером. Поврежденная файловая система или исчерпанная память могут привести к ошибке 500.
Модули Node.js. Если у вас есть сайт на основе Node.js, обновление модулей может вызвать внутреннюю ошибку сервера 500.
Довольно часто вредоносный код, внедряемый на ваш сайт, приводит к ошибке 500.
Несовместимый модуль. Загрузка несовместимого модуля PHP или Apache вызывает ошибку 500.
P.S. Надеюсь, кому-то помог. Удачи.
Ошибка в коде вашего веб-приложения
Также частая ситуация, когда apache2 настроен правильно, но всё равно возникает эта нелогирующаяся ошибка «Internal Server Error», тогда следует проследить отрабатывает ли вообще ваше приложение.
Например, если оно не может подключиться к базе данных, то вы, всё равно, увидите «Internal Server Error». Стоит проверить верный ли пароль и есть ли доступ к базе данных. А возможно, что просто веб-приложение запустилось раньше базы данных, в этом случае поможет простая перезагрузка apache2.
Если ваше приложение взаимодействует с внешним ресурсом, и он оказывается не доступен или привышен лимит ожидания ответа, то вы снова увидите «Internal Server Error».
Права доступа
Проблема возникает тогда, когда права файлов вашего проекта не соответствуют ожидаемым.
2.1. Владелец файлов
Файлы вашего проекта не принадлежат пользователю www-data.
sudo chown -R www-data:www-data your_project/
P.S. Случается так, что apache2 при установке не создаёт пользователя www-data, в этом нет ничего страшного, можно обойтись и без его создания. Права отлично функционируют и сайт работает.
2.2. Права файлов
Ошибка так же может возникать когда владелец установлен верно, но всё равно не имеет доступа к файлам из-за настроек прав доступа.
sudo chmod -R 755 your_project/
2.3. Веб-приложение работает с файлами системы
«Internal Server Error» возникает, когда ваше веб-приложение взаимодействует с файлами системы у которых нет прав на исполнение. Звучит также странно как есть на самом деле, почему я не могу читать файлы у которых есть право на чтение? До сих пор не понимаю. Но проблема эта решается, если выдать файлам право на исполнение.
sudo chmod -R 777 your_project/files/
Конфигурация
1.1. Ошибка конфигурации веб-приложения
Прежде всего рекомендую сделать запрос к вашему сайту локально, прямо с сервера.
curl localhost:80
Если вы не видите «Internal Server Error», а видите html страницу, то 99% проблема в файлах конфигурации и настройках доступа.
Проверьте файл: /etc/apache2/sites-available/your_app.conf
где your_app.conf — название вашего файла конфирурации, либо стандартный conf файл — «000-default.conf»
Как он выглядит:
Строка «Require ip 127.0.0.1» говорит, о том, что разрешено подключение только с локального хоста.
Решение: замените строку «Require ip 127.0.0.1» на «Require all granted»
Так же «Require all granted» должна быть в /etc/apache2/apache2.conf
1.2. Старый конфигурационный файл
Возможно, создавая новый файл конфигурации веб-приложения он не был выбрал или включен.
Решение:
1. Выключаем стандартный файл конфигурации
2. Включаем свой
3. Перезагружаем apache2
a2dissite 000-default.conf
a2ensite your_app.conf
systemctl restart apache2