Koristni ukazi za upravljanje spletnega strežnika Apache v Linuxu


V tej vadnici bomo opisali nekaj najpogosteje uporabljenih ukazov za upravljanje storitev Apache (HTTPD), ki bi jih morali poznati kot razvijalec ali sistemski skrbnik in bi morali imeti te ukaze na dosegu roke. Prikazali bomo ukaze za Systemd in SysVinit.

Prepričajte se, da morajo biti naslednji ukazi izvedeni kot root ali sudo uporabnik in naj delujejo na kateri koli distribuciji Linuxa, kot so CentOS, RHEL, Fedora Debian in Ubuntu.

Namestite strežnik Apache

Če želite namestiti spletni strežnik Apache, uporabite privzetega upravitelja distribucijskih paketov, kot je prikazano.

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

Preverite različico Apache

Če želite preveriti nameščeno različico spletnega strežnika Apache v sistemu Linux, zaženite naslednji ukaz.

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

Če želite prikazati številko različice Apache in nastavitve prevajanja, uporabite zastavico -V , kot je prikazano.

$ sudo httpd -V
OR
$ sudo apache2 -V
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"

Preverite napake v sintaksi konfiguracije Apache

Če želite preveriti konfiguracijske datoteke Apache glede sintaktičnih napak, zaženite naslednji ukaz, ki bo preveril veljavnost konfiguracijskih datotek, preden znova zaženete storitev.

$ sudo httpd -t
OR
$ sudo apache2ctl -t
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

Zaženite storitev Apache

Če želite zagnati storitev Apache, zaženite naslednji ukaz.

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

Omogoči storitev Apache

Prejšnji ukaz medtem zažene storitev Apache, če želite omogočiti samodejni zagon ob zagonu sistema, zaženite naslednji ukaz.

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

Znova zaženite storitev Apache

Če želite znova zagnati Apache (ustaviti in nato zagnati storitev), zaženite naslednji ukaz.

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

Ogled stanja storitve Apache

Če želite preveriti informacije o času izvajanja storitve Apache, zaženite naslednji ukaz.

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

Znova naložite storitev Apache

Če ste spremenili konfiguracijo strežnika Apache, lahko storitvi naročite, naj znova naloži svojo konfiguracijo, tako da izvedete naslednji ukaz.

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

Ustavite storitev Apache

Če želite ustaviti storitev Apache, uporabite naslednji ukaz.

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

Pokaži pomoč za ukaz Apache

Nenazadnje lahko dobite pomoč glede ukazov storitve Apache pod systemd tako, da zaženete naslednji ukaz.

$ sudo httpd -h
OR
$ sudo apache2 -h		
OR
$ systemctl -h apache2	
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)

Več informacij o systemctl najdete v posvetovanju: Kako upravljati storitve in enote "Systemd" z uporabo "Systemctl" v Linuxu.

Morda bi radi prebrali tudi naslednje članke, povezane z Apacheom.

  1. 5 nasvetov za povečanje učinkovitosti vašega spletnega strežnika Apache
  2. Kako spremljati statistiko nalaganja in strani spletnega strežnika Apache
  3. Kako upravljati spletni strežnik Apache z orodjem\"Apache GUI"
  4. Kako spremeniti vrata HTTP Apache v Linuxu
  5. 13 nasvetov za varnost in utrjevanje spletnega strežnika Apache
  6. Zaščitite Apache pred napadi Brute Force ali DDoS z uporabo modulov Mod_Security in Mod_evasive

To je vse za zdaj! V tem članku smo razložili najpogosteje uporabljene ukaze za upravljanje storitev Apache/HTTPD, ki jih morate poznati, vključno z zagonom, omogočanjem, ponovnim zagonom in ustavitvijo Apache. Za vsa vprašanja ali komentarje nas lahko vedno kontaktirate preko spodnjega obrazca za povratne informacije.