Zoeken op website

Handige opdrachten om Apache Web Server in Linux te beheren


In deze tutorial beschrijven we enkele van de meest gebruikte Apache (HTTPD) servicebeheeropdrachten die u als ontwikkelaar of systeembeheerder moet kennen en die u binnen handbereik moet houden. We zullen commando's tonen voor zowel Systemd als SysVinit.

Lees ook: 10 meest gebruikte Nginx-opdrachten die elke Linux-gebruiker moet kennen

Zorg ervoor dat de volgende opdrachten moeten worden uitgevoerd als een root- of sudo-gebruiker en moeten werken op elke Linux-distributie zoals CentOS, RHEL, Fedora Debian en Ubuntu.

Installeer Apache-server

Om de Apache-webserver te installeren, gebruikt u uw standaard distributiepakketbeheerder, zoals weergegeven.

sudo apt install apache2	    [On Debian/Ubuntu]
sudo yum install httpd	    [On RHEL/CentOS]
sudo dnf install httpd	    [On Fedora 22+]
sudo zypper install apache2	    [On openSUSE]

Controleer de Apache-versie

Voer de volgende opdracht uit om de geïnstalleerde versie van uw Apache-webserver op uw Linux-systeem te controleren.

sudo httpd -v
OR
sudo apache2 -v
Voorbeelduitvoer
Server version: Apache/2.4.6 (CentOS)
Server built:   Nov  5 2018 01:47:09

Als u het versienummer van Apache en de compileerinstellingen wilt weergeven, gebruikt u de vlag -V zoals weergegeven.

sudo httpd -V
OR
sudo apache2 -V
Voorbeelduitvoer
Server version: Apache/2.4.6 (CentOS)
Server built:   Nov  5 2018 01:47:09
Server's Module Magic Number: 20120211:24
Server loaded:  APR 1.4.8, APR-UTIL 1.5.2
Compiled using: APR 1.4.8, APR-UTIL 1.5.2
Architecture:   64-bit
Server MPM:     prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=256
 -D HTTPD_ROOT="/etc/httpd"
 -D SUEXEC_BIN="/usr/sbin/suexec"
 -D DEFAULT_PIDLOG="/run/httpd/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="conf/mime.types"
 -D SERVER_CONFIG_FILE="conf/httpd.conf"

Controleer syntaxisfouten in de Apache-configuratie

Om uw Apache-configuratiebestanden te controleren op eventuele syntaxisfouten, voert u de volgende opdracht uit, waarmee de geldigheid van de configuratiebestanden wordt gecontroleerd, voordat u de service opnieuw start.

sudo httpd -t
OR
sudo apache2ctl -t
Voorbeelduitvoer
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using linux-console.net. 
Set the 'ServerName' directive globally to suppress this message
Syntax OK

Start Apache-service

Voer de volgende opdracht uit om de Apache-service te starten.

------------ On CentOS/RHEL ------------ 
sudo systemctl start httpd     [On Systemd]
sudo service httpd start 	 [On SysVInit]

------------ On Ubunt/Debian  ------------
sudo systemctl start apache2   [On Systemd]
sudo service apache2 start     [On SysVInit]

Schakel Apache-service in

Met de vorige opdracht wordt de Apache-service voorlopig alleen gestart. Om deze automatisch te laten starten bij het opstarten van het systeem, voert u de volgende opdracht uit.

------------ On CentOS/RHEL ------------ 
sudo systemctl enable httpd     [On Systemd]
sudo chkconfig httpd on 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
sudo systemctl enable apache2   [On Systemd]
sudo chkconfig apache2 on       [On SysVInit]

Start de Apache-service opnieuw

Om Apache opnieuw te starten (stop en vervolgens start de service), voert u de volgende opdracht uit.

------------ On CentOS/RHEL ------------ 
sudo systemctl restart httpd     [On Systemd]
sudo service httpd restart 	   [On SysVInit]

------------ On Ubunt/Debian  ------------
sudo systemctl restart apache2   [On Systemd]
sudo service apache2 restart     [On SysVInit]

Bekijk de Apache-servicestatus

Voer de volgende opdracht uit om de runtimestatusinformatie van de Apache-service te controleren.

------------ On CentOS/RHEL ------------ 
sudo systemctl status httpd     [On Systemd]
sudo service httpd status 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
sudo systemctl status apache2   [On Systemd]
sudo service apache2 status     [On SysVInit]

Laad de Apache-service opnieuw

Als u wijzigingen heeft aangebracht in de Apache-serverconfiguratie, kunt u de service opdracht geven de configuratie opnieuw te laden door de volgende opdracht uit te voeren.

------------ On CentOS/RHEL ------------ 
sudo systemctl reload httpd     [On Systemd]
sudo service httpd reload 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
sudo systemctl reload apache2   [On Systemd]
sudo service apache2 reload     [On SysVInit]

Stop de Apache-service

Gebruik de volgende opdracht om de Apache-service te stoppen.

------------ On CentOS/RHEL ------------ 
sudo systemctl stop httpd       [On Systemd]
sudo service httpd stop 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
sudo systemctl stop apache2     [On Systemd]
sudo service apache2 stop     [On SysVInit]

Toon Apache Command Help

Last but not least kunt u hulp krijgen over de Apache serviceopdrachten onder systemd door de volgende opdracht uit te voeren.

sudo httpd -h
OR
sudo apache2 -h		
OR
systemctl -h apache2	
Voorbeelduitvoer
Usage: httpd [-D name] [-d directory] [-f file]
             [-C "directive"] [-c "directive"]
             [-k start|restart|graceful|graceful-stop|stop]
             [-v] [-V] [-h] [-l] [-L] [-t] [-T] [-S] [-X]
Options:
  -D name            : define a name for use in  directives
  -d directory       : specify an alternate initial ServerRoot
  -f file            : specify an alternate ServerConfigFile
  -C "directive"     : process directive before reading config files
  -c "directive"     : process directive after reading config files
  -e level           : show startup errors of level (see LogLevel)
  -E file            : log startup errors to file
  -v                 : show version number
  -V                 : show compile settings
  -h                 : list available command line options (this page)
  -l                 : list compiled in modules
  -L                 : list available configuration directives
  -t -D DUMP_VHOSTS  : show parsed vhost settings
  -t -D DUMP_RUN_CFG : show parsed run settings
  -S                 : a synonym for -t -D DUMP_VHOSTS -D DUMP_RUN_CFG
  -t -D DUMP_MODULES : show all loaded modules 
  -M                 : a synonym for -t -D DUMP_MODULES
  -t                 : run syntax check for config files
  -T                 : start without DocumentRoot(s) check
  -X                 : debug mode (only one worker, do not detach)

U kunt meer informatie over systemctl vinden door te raadplegen: How to Manage 'Systemd' Services and Units Using 'Systemctl' in Linux.

Misschien wilt u ook deze volgende Apache-gerelateerde artikelen lezen.

  1. 5 tips om de prestaties van uw Apache-webserver te verbeteren
  2. Hoe Apache Web Server-belasting en paginastatistieken te controleren
  3. Hoe u de Apache-webserver beheert met behulp van de “Apache GUI”-tool
  4. Hoe Apache HTTP-poort in Linux te wijzigen
  5. 13 Apache Web Server-tips voor beveiliging en verharding
  6. Bescherm Apache tegen brute force- of DDoS-aanvallen met behulp van Mod_Security- en Mod_evasive-modules

Dat is het voor nu! In dit artikel hebben we de meest gebruikte Apache/HTTPD servicebeheeropdrachten uitgelegd die u moet kennen, inclusief het starten, inschakelen, opnieuw opstarten en stoppen van Apache. Voor vragen of opmerkingen kunt u ons altijd bereiken via onderstaand feedbackformulier.