Vyhledávání na webu

Užitečné příkazy pro správu webového serveru Apache v systému Linux


V tomto tutoriálu popíšeme některé z nejběžněji používaných příkazů správy služeb Apache (HTTPD), které byste měli znát jako vývojáři nebo správce systému a měli byste je mít na dosah ruky. Ukážeme si příkazy pro Systemd a SysVinit.

Přečtěte si také: 10 nejpoužívanějších příkazů Nginx, které musí znát každý uživatel Linuxu

Ujistěte se, že následující příkazy musí být spouštěny jako root nebo uživatel sudo a měly by fungovat v jakékoli distribuci Linuxu, jako je CentOS, RHEL, Fedora Debian a Ubuntu.

Nainstalujte Apache Server

Chcete-li nainstalovat webový server Apache, použijte výchozího správce distribučních balíčků, jak je uvedeno na obrázku.

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]

Zkontrolujte verzi Apache

Chcete-li zkontrolovat nainstalovanou verzi vašeho webového serveru Apache v systému Linux, spusťte následující příkaz.

sudo httpd -v
OR
sudo apache2 -v
Ukázkový výstup
Server version: Apache/2.4.6 (CentOS)
Server built:   Nov  5 2018 01:47:09

Pokud chcete zobrazit číslo verze Apache a nastavení kompilace, použijte příznak -V, jak je znázorněno.

sudo httpd -V
OR
sudo apache2 -V
Ukázkový výstup
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"

Zkontrolujte chyby syntaxe konfigurace Apache

Chcete-li zkontrolovat, zda konfigurační soubory Apache neobsahují chyby syntaxe, spusťte následující příkaz, který před restartováním služby zkontroluje platnost konfiguračních souborů.

sudo httpd -t
OR
sudo apache2ctl -t
Ukázkový výstup
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

Spusťte službu Apache

Chcete-li spustit službu Apache, spusťte následující příkaz.

------------ 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]

Povolit službu Apache

Předchozí příkaz spouští službu Apache pouze mezitím. Chcete-li povolit její automatické spouštění při spouštění systému, spusťte následující příkaz.

------------ 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]

Restartujte službu Apache

Chcete-li restartovat Apache (zastavit a poté spustit službu), spusťte následující příkaz.

------------ 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]

Zobrazit stav služby Apache

Chcete-li zkontrolovat informace o stavu běhu služby Apache, spusťte následující příkaz.

------------ 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]

Znovu načtěte službu Apache

Pokud jste provedli nějaké změny v konfiguraci serveru Apache, můžete dát službě pokyn, aby znovu načetla konfiguraci spuštěním následujícího příkazu.

------------ 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]

Zastavte službu Apache

Chcete-li zastavit službu Apache, použijte následující příkaz.

------------ 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]

Zobrazit nápovědu k příkazu Apache

V neposlední řadě můžete získat nápovědu k příkazům služby Apache pod systemd spuštěním následujícího příkazu.

sudo httpd -h
OR
sudo apache2 -h		
OR
systemctl -h apache2	
Ukázkový výstup
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)

Další informace o systemctl najdete v článku: Jak spravovat služby a jednotky ‚Systemd‘ pomocí ‚Systemctl‘ v Linuxu.

Můžete si také přečíst následující články související s Apache.

  1. 5 tipů, jak zvýšit výkon vašeho webového serveru Apache
  2. Jak sledovat zatížení webového serveru Apache a statistiky stránek
  3. Jak spravovat webový server Apache pomocí nástroje „Apache GUI“.
  4. Jak změnit Apache HTTP Port v Linuxu
  5. 13 Tipy pro zabezpečení a posílení webového serveru Apache
  6. Chraňte Apache před útoky hrubou silou nebo DDoS pomocí modulů Mod_Security a Mod_evasive

To je prozatím vše! V tomto článku jsme vysvětlili nejběžněji používané příkazy správy služeb Apache/HTTPD, které byste měli znát, včetně spouštění, povolení, restartování a zastavení Apache. V případě jakýchkoli dotazů nebo připomínek nás můžete kdykoli kontaktovat prostřednictvím formuláře zpětné vazby níže.