#apache #http #http-status-code-500 #centos8
#apache #http #http-status-code-500 #centos8
Вопрос:
Я никогда раньше не сталкивался с этой проблемой, но при новой установке CentOS 8 и apache 2.4 я пытаюсь добавить новый виртуальный хост в файл vhost.conf в /etc/httpd/conf.d/, как показано ниже
<VirtualHost *:80>
ServerName db.example.com
ServerAlias db.example.com
DocumentRoot /usr/share/mysite
<Directory /usr/share/mysite>
Options -Indexes FollowSymLinks
AllowOverride All
</Directory>
</VirtualHost>
Я протестировал конфигурацию
#apachectl configtest
Синтаксис в порядке
Но все же, когда это присутствует в conf.d, сервер выдает ошибку HTTP 500. Когда я удаляю этот файл и перезапускаю сервер, отображается страница приветствия.
Я полностью потерялся здесь, пожалуйста, помогите
Комментарии:
1. Что делает error_log.txt сказать? Он находится в /var/log/httpd/
2. Нет журнала для этого в error_log
3. Тогда как насчет журнала доступа? Также попробуйте поместить файл hello.txt в /usr/share/mysite/, а затем запросить db.example.com/hello.txt — Если это все еще не удается, найдите текст hello.txt в журналах доступа и ошибок. Также: вы уверены, что apache имеет доступ на чтение к /usr/share/mysite? Также: это может быть проблемой selinux. Попробуйте временно отключить selinux и посмотреть, решит ли это проблему.
Ответ №1:
Добавьте виртуальный хост в /sites-available, создайте site.conf внутри, затем выполните a2ensite site.conf
следуйте этому руководству для точных шагов
https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-centos-7
Комментарии:
1. Для меня это чрезвычайно сложный способ настройки виртуального хоста. Я делаю один корпоративный сайт для каждого экземпляра, а не для обычного хостинга, удобно делал один файл виртуального хоста conf внутри папки conf.d, и все это работало без проблем. Не уверен, что в этом плохого. Это был простой и прямой метод. Почему я не могу сделать это, как раньше?
2. Просто следуйте инструкциям, это не ракетостроение, вот как вы изучаете это навсегда
3. Поймите, но мы создали приложение для развертывания и настройки наших приложений, используя виртуальные хосты в conf.d . Он хорошо работает уже много лет, нам нужно внести в него серьезные изменения, которые нам тоже дорого обойдутся
Ответ №2:
Это было печально, но мне пришлось вернуться к CentOS 7 из-за нехватки времени. Там использовались те же конфигурации, и это сработало с очарованием.
В centos 8 он считывал конфигурации, так как у меня была ошибка в пути в файле .conf, для которой apache выдал ошибку (файл не найден). Но в тот момент, когда это было исправлено, он снова выдал ошибку 500.
Затем мне пришлось вернуться к centos 7, и все заработало, я сэкономил много времени.