Naudingos komandos, skirtos valdyti „Apache“ žiniatinklio serverį sistemoje „Linux“.


Šioje mokymo programoje apibūdinsime kai kurias dažniausiai naudojamas Apache (HTTPD) paslaugų valdymo komandas, kurias turėtumėte žinoti kaip kūrėjas arba sistemos administratorius, ir šias komandas turėtumėte turėti po ranka. Rodysime komandas Systemd ir SysVinit.

Taip pat skaitykite: 10 dažniausiai naudojamų „Nginx“ komandų, kurias turi žinoti kiekvienas „Linux“ vartotojas

Įsitikinkite, kad šios komandos turi būti vykdomos kaip root arba sudo naudotojas ir turėtų veikti bet kuriame „Linux“ paskirstyme, pvz., CentOS, RHEL, Fedora Debian ir Ubuntu.

Įdiekite „Apache Server“.

Norėdami įdiegti „Apache“ žiniatinklio serverį, naudokite numatytąjį platinimo paketų tvarkyklę, kaip parodyta.

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]

Patikrinkite Apache versiją

Norėdami patikrinti „Linux“ sistemoje įdiegtą „Apache“ žiniatinklio serverio versiją, paleiskite šią komandą.

sudo httpd -v
OR
sudo apache2 -v
Pavyzdžio išvestis
Server version: Apache/2.4.6 (CentOS)
Server built:   Nov  5 2018 01:47:09

Jei norite rodyti Apache versijos numerį ir kompiliuoti nustatymus, naudokite vėliavėlę -V, kaip parodyta.

sudo httpd -V
OR
sudo apache2 -V
Pavyzdžio išvestis
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"

Patikrinkite „Apache“ konfigūracijos sintaksės klaidas

Norėdami patikrinti, ar „Apache“ konfigūracijos failuose nėra sintaksės klaidų, prieš paleisdami paslaugą iš naujo paleiskite šią komandą, kuri patikrins konfigūracijos failų galiojimą.

sudo httpd -t
OR
sudo apache2ctl -t
Pavyzdžio išvestis
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

Paleiskite „Apache Service“.

Norėdami paleisti Apache paslaugą, paleiskite šią komandą.

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

Įgalinkite „Apache“ paslaugą

Ankstesnė komanda tik tuo tarpu paleidžia „Apache“ paslaugą, kad įgalintumėte jos automatinį paleidimą sistemos paleidimo metu, paleiskite šią komandą.

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

Iš naujo paleiskite „Apache Service“.

Norėdami iš naujo paleisti „Apache“ (sustabdyti, tada paleisti paslaugą), paleiskite šią komandą.

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

Peržiūrėkite „Apache“ paslaugos būseną

Norėdami patikrinti Apache paslaugos vykdymo laiko būsenos informaciją, paleiskite šią komandą.

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

Iš naujo įkelkite „Apache“ paslaugą

Jei atlikote kokių nors „Apache“ serverio konfigūracijos pakeitimų, galite nurodyti tarnybai iš naujo įkelti konfigūraciją vykdydami šią komandą.

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

Sustabdykite „Apache“ paslaugą

Norėdami sustabdyti Apache paslaugą, naudokite šią komandą.

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

Rodyti „Apache“ komandų žinyną

Paskutinis, bet ne mažiau svarbus dalykas – galite gauti pagalbos apie Apache paslaugų komandas, esančias sistemojed, vykdydami šią komandą.

sudo httpd -h
OR
sudo apache2 -h		
OR
systemctl -h apache2	
Pavyzdžio išvestis
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)

Daugiau informacijos apie systemctl galite rasti pasikonsultavę: Kaip valdyti „Systemd“ paslaugas ir vienetus naudojant „Systemctl“ sistemoje „Linux“.

Taip pat galbūt norėsite perskaityti šiuos su „Apache“ susijusius straipsnius.

  1. 5 patarimai, kaip padidinti „Apache“ žiniatinklio serverio našumą
  2. Kaip stebėti „Apache“ žiniatinklio serverio apkrovą ir puslapio statistiką
  3. Kaip administruoti „Apache“ žiniatinklio serverį naudojant „Apache GUI“ įrankį
  4. Kaip pakeisti „Apache“ HTTP prievadą „Linux“.
  5. 13 „Apache“ žiniatinklio serverio saugos ir tvirtinimo patarimų
  6. Apsaugokite „Apache“ nuo brutalios jėgos arba DDoS atakų naudodami „Mod_Security“ ir „Mod_evasive“ modulius

Tai kol kas viskas! Šiame straipsnyje paaiškinome dažniausiai naudojamas Apache/HTTPD paslaugų valdymo komandas, kurias turėtumėte žinoti, įskaitant Apache paleidimą, įgalinimą, paleidimą iš naujo ir sustabdymą. Visada galite susisiekti su mumis naudodami toliau pateiktą atsiliepimų formą, jei turite klausimų ar komentarų.