Hvordan liste alle virtuelle verter i Apache Web Server


Apache virtuell vertskonfigurasjon lar deg kjøre flere nettsteder på samme server, det betyr at du kan kjøre mer enn ett nettsted på samme Apache-nettserver. Du oppretter ganske enkelt en ny virtuell vertskonfigurasjon for hvert av nettstedene dine og starter Apache-konfigurasjonen på nytt for å begynne å betjene nettstedet.

På Debian/Ubuntu lagres den siste versjonen av Apache-konfigurasjonsfiler for alle virtuelle verter i katalogen /etc/apache2/sites-available/. Så det gjør det veldig vanskelig å gå gjennom alle disse virtuelle vertskonfigurasjonsfilene for å fikse eventuelle konfigurasjonsfeil.

For å gjøre ting enklere, vil vi i denne artikkelen vise deg hvordan du viser alle aktiverte virtuelle apache-verter på en webserver ved å bruke en enkelt kommando på terminalen. Denne metoden vil også hjelpe deg å se noen andre nyttige apache-konfigurasjoner.

Dette er praktisk talt nyttig i et scenario der du hjelper et selskap med å fikse nettserverproblemer eksternt, men du kjenner ikke deres nåværende apache-nettserverkonfigurasjoner når det gjelder virtuelle verter.

Det vil gjøre det lettere å søke etter den virtuelle verten til et spesifikt nettsted i apache-konfigurasjonsfilene og hjelpe til med å feilsøke eventuelle apache-problemer, hvor du i de fleste tilfeller starter med å sjekke de aktive virtuelle vertene før du ser inn i loggene.

For å liste opp alle aktiverte virtuelle verter på webserveren, kjør følgende kommando i en terminal.

# apache2ctl -S   [On Debian/Ubuntu]
# apachectl -S    [On CentOS/RHEL]
OR
# httpd -S

Du vil få en liste over alle konfigurerte virtuelle verter samt andre viktige apache/httpd-serverkonfigurasjoner.

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

Fra utgangen ovenfor kan vi tydelig se hvilke porter og IP-adresser som er konfigurert for hvert nettsted. Vi vil også se konfigurasjonsfilen for hver nettsteds virtuelle vert og deres plassering.

Dette er veldig nyttig når du feilsøker eller fikser eventuelle konfigurasjonsfeil for apache virtuelle vert, eller du bare vil se en liste over alle aktiverte virtuelle vertsoppsummeringer på en webserver.

Det er alt! Du kan også finne disse følgende relaterte artiklene på Apache-nettserveren.

  1. 3 måter å sjekke Apache-serverstatus og oppetid i Linux
  2. 13 tips om sikkerhet og herding av Apache Web Server
  3. Hvordan endre standard Apache ‘DocumentRoot’-katalog i Linux
  4. Slik skjuler du Apache-versjonsnummer og annen sensitiv informasjon

Hvis du har spørsmål knyttet til Apache HTTP-server, bruk kommentarskjemaet nedenfor for å nå oss.