Comenzi utile pentru gestionarea serverului web Apache în Linux


În acest tutorial, vom descrie unele dintre cele mai frecvent utilizate comenzi de gestionare a serviciilor Apache (HTTPD) pe care ar trebui să le cunoașteți ca dezvoltator sau administrator de sistem și ar trebui să păstrați aceste comenzi la îndemână. Vom afișa comenzi atât pentru Systemd, cât și pentru SysVinit.

Asigurați-vă că următoarele comenzi trebuie să fie executate ca utilizator root sau sudo și ar trebui să funcționeze pe orice distribuție Linux, cum ar fi CentOS, RHEL, Fedora Debian și Ubuntu.

Instalați Apache Server

Pentru a instala serverul web Apache, utilizați managerul de pachete de distribuție implicit, așa cum se arată.

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

Verificați versiunea Apache

Pentru a verifica versiunea instalată a serverului dvs. web Apache pe sistemul dvs. Linux, executați următoarea comandă.

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

Dacă doriți să afișați numărul versiunii Apache și să compilați setările, utilizați indicatorul -V așa cum se arată.

$ sudo httpd -V
OR
$ sudo apache2 -V
Ieșire eșantion
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"

Verificați erorile de sintaxă a configurației Apache

Pentru a verifica fișierele de configurare Apache pentru orice erori de sintaxă, rulați următoarea comandă, care va verifica validitatea fișierelor de configurare, înainte de a reporni serviciul.

$ sudo httpd -t
OR
$ sudo apache2ctl -t
Ieșire eșantion
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

Porniți Serviciul Apache

Pentru a porni serviciul Apache, executați următoarea comandă.

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

Activați serviciul Apache

Comanda anterioară pornește doar serviciul Apache între timp, pentru a-l activa pornirea automată la pornirea sistemului, executați următoarea comandă.

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

Reporniți Serviciul Apache

Pentru a reporni Apache (opriți și apoi porniți serviciul), executați următoarea comandă.

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

Vedeți starea serviciului Apache

Pentru a verifica informațiile despre starea de rulare a serviciului Apache, executați următoarea comandă.

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

Reîncărcați Serviciul Apache

Dacă ați făcut modificări în configurația serverului Apache, puteți solicita serviciului să-și reîncarce configurația executând următoarea comandă.

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

Opriți serviciul Apache

Pentru a opri serviciul Apache, utilizați următoarea comandă.

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

Afișați Apache Command Help

Nu în ultimul rând, puteți obține ajutor despre comenzile serviciului Apache sub systemd rulând următoarea comandă.

$ sudo httpd -h
OR
$ sudo apache2 -h		
OR
$ systemctl -h apache2	
Ieșire eșantion
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)

Puteți găsi mai multe informații despre systemctl consultând: Cum să gestionați serviciile și unitățile „Systemd” folosind „Systemctl” în Linux.

De asemenea, v-ar putea dori să citiți următoarele articole legate de Apache.

  1. 5 sfaturi pentru a crește performanța serverului dvs. web Apache
  2. Cum se monitorizează încărcarea serverului web Apache și statisticile paginii
  3. Cum se administrează serverul web Apache utilizând instrumentul „Apache GUI”
  4. Cum se schimbă portul HTTP Apache în Linux
  5. 13 sfaturi privind securitatea și consolidarea serverului web Apache
  6. Protejați Apache împotriva forței brute sau atacurilor DDoS utilizând modulele Mod_Security și Mod_evasive

Asta este tot pentru acum! În acest articol, am explicat cele mai frecvent utilizate comenzi de gestionare a serviciilor Apache/HTTPD pe care ar trebui să le cunoașteți, inclusiv pornirea, activarea, repornirea și oprirea Apache. Ne puteți contacta oricând prin formularul de feedback de mai jos pentru orice întrebări sau comentarii.