Как составить список всех виртуальных хостов на веб-сервере Apache
Конфигурация виртуального хоста Apache позволяет запускать несколько веб-сайтов на одном сервере. Это означает, что вы можете запускать более одного веб-сайта на одном веб-сервере Apache. Вы просто создаете новую конфигурацию виртуального хоста для каждого из ваших веб-сайтов и перезапускаете конфигурацию Apache, чтобы начать обслуживание веб-сайта.
В Debian/Ubuntu последние версии файлов конфигурации Apache для всех виртуальных хостов хранятся в каталоге /etc/apache2/sites-available/. Таким образом, очень сложно просмотреть все эти файлы конфигурации виртуального хоста, чтобы исправить любые ошибки конфигурации.
Чтобы упростить задачу, в этой статье мы покажем вам, как составить список всех включенных виртуальных хостов Apache на веб-сервере с помощью одной команды на терминале. Этот метод также поможет вам увидеть несколько других полезных конфигураций Apache.
Это практически полезно в сценарии, когда вы помогаете компании удаленно устранять проблемы с веб-сервером, но не знаете текущие конфигурации веб-сервера Apache в отношении виртуальных хостов.
Читайте также: как проверить, какие модули Apache включены/загружены в Linux
Это поможет упростить поиск виртуального хоста определенного веб-сайта в файлах конфигурации Apache и поможет в устранении любых проблем с Apache. В большинстве случаев вы начнете с проверки включенных в данный момент виртуальных хостов, прежде чем просматривать журналы.
Чтобы вывести список всех включенных виртуальных хостов на веб-сервере, выполните следующую команду в терминале.
apache2ctl -S [On Debian/Ubuntu]
apachectl -S [On CentOS/RHEL]
OR
httpd -S
Вы получите список всех настроенных виртуальных хостов, а также другие важные конфигурации сервера Apache/httpd.
VirtualHost configuration:
*:80 is a NameVirtualHost
default server api.example.com (/etc/httpd/conf.d/api.example.com.conf:1)
port 80 namevhost api.example.com (/etc/httpd/conf.d/api.example.com.conf:1)
alias www.api.example.com
port 80 namevhost corp.example.com (/etc/httpd/conf.d/corp.example.com.conf:1)
alias www.corp.example.com
port 80 namevhost admin.example.com (/etc/httpd/conf.d/admin.example.com.conf:1)
alias www.admin.example.com
port 80 namevhost tecmint.lan (/etc/httpd/conf.d/tecmint.lan.conf:1)
alias www.tecmint.lan
ServerRoot: "/etc/httpd"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/etc/httpd/logs/error_log"
Mutex default: dir="/run/httpd/" mechanism=default
Mutex mpm-accept: using_defaults
Mutex authdigest-opaque: using_defaults
Mutex proxy-balancer-shm: using_defaults
Mutex rewrite-map: using_defaults
Mutex authdigest-client: using_defaults
Mutex ssl-stapling: using_defaults
Mutex proxy: using_defaults
Mutex authn-socache: using_defaults
Mutex ssl-cache: using_defaults
PidFile: "/run/httpd/httpd.pid"
Define: _RH_HAS_HTTPPROTOCOLOPTIONS
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="apache" id=48 not_used
Group: name="apache" id=48 not_used
Из приведенного выше вывода мы ясно видим, какие порты и IP-адреса настроены для каждого веб-сайта. Мы также увидим каждый файл конфигурации виртуального хоста веб-сайта и его местоположение.
Это очень полезно, когда вы устраняете неполадки или исправляете какие-либо ошибки конфигурации виртуального хоста Apache или просто хотите просмотреть список всех включенных сводных данных виртуальных хостов на веб-сервере.
Вот и все! Вы также можете найти следующие статьи по веб-серверу Apache.
- 3 способа проверить состояние и время работы сервера Apache в Linux
- 13 советов по безопасности и усилению безопасности веб-сервера Apache
- Как изменить каталог Apache DocumentRoot по умолчанию в Linux
- Как скрыть номер версии Apache и другую конфиденциальную информацию
Если у вас есть какие-либо вопросы, касающиеся HTTP-сервера Apache, используйте форму комментариев ниже, чтобы связаться с нами.