GNU/Linux >> Znalost Linux >  >> Linux

Admin 101:Základy přežití Apache

Během svého působení jako podpůrný technik a také v armádě jsem viděl několik příležitostí, kdy správce systému dostal za úkol spravovat systém, který neznal. Vždycky to vypadalo nějak takhle:"Ten chlap, co tento systém vlastnil, vzal jinou práci a tak mi ji dali, dokud nenajdou náhradu." Měl jsem tento rozhovor vícekrát, než jsem dokázal spočítat, pokud šlo o úložné systémy a nepřekvapivě také o webové servery.

Představte si, že jste vrženi do takové situace. Administrátor Apache vaší společnosti přijme jinou práci, dostane výpověď atd. Přijde za vámi váš manažer a řekne, že potřebuje, abyste provozovali systém, dokud nedostanou náhradu. Tak co děláš? Kam chodíte pro odpovědi? Co potřebujete vědět pro základní obsluhu? To vše jsou skvělé otázky, na které společně odpovíme.

Pro začátek potřebujeme vědět, jakou roli hraje Apache v prostředí. Apache je webový server s otevřeným zdrojovým kódem, který nám umožňuje hostovat obsah online. Pokud navštívíme web, zkontroluje naše informace a poté nás připojí k webovým stránkám a obsahu, které požadujeme. Podle mých osobních zkušeností produkt, který jsem podporoval, používal Apache k hostování webových grafických rozhraní, aby naši zákazníci mohli spravovat své úložné systémy na dálku. Umožnilo jim to provádět údržbu, upgrady, záplaty atd. Nyní, když máme základní znalosti o tom, co je Apache a proč jej potřebujeme, pojďme se podívat na základní správu.

Zapnutí a vypnutí služeb

Nejzákladnější informací, kterou byste jako správce chtěli vědět, je, zda je služba spuštěna a spuštěna. Pro všechny služby existují tři základní příkazy, které potřebujete, abyste získali přesný snímek stavu dané služby. Musíte také povolit služby (jedním z nich je Apache). V tomto článku jsou všechny příkazy spouštěny v prostředí Red Hat Enterprise Linux 8.

Pro aktivaci služby Apache používáme následující příkaz:

[root@rhel8dev ~]# systemctl enable httpd
Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service.

Poznámka: Toto je nutné provést před spuštěním nebo konfigurací služby.

Dále se podíváme na příkaz status:

[root@rhel8dev ~]# systemctl status httpd
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor prese>
Active: inactive (dead)
Docs: man:httpd.service(8)

Z výše uvedeného výstupu můžete vidět, že služba nefunguje. Abychom tento stav změnili, musíme spustit service start příkaz zobrazený zde:

[root@rhel8dev ~]# systemctl start httpd

Poznámka: Neexistuje žádný výstup pro příkazy start a stop.

Nyní, když zkontrolujeme stav služby pomocí příkazu, který jsme viděli dříve, uvidíme, že služba je v provozu:

[root@rhel8dev ~]# systemctl status httpd
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor prese>
Active: active (running) since Mon 2019-10-07 12:25:18 EDT; 1min 25s ago
Docs: man:httpd.service(8)
Main PID: 3349 (httpd)
Status: "Running, listening on: port 80"
Tasks: 213 (limit: 18538)
Memory: 54.2M
CGroup: /system.slice/httpd.service
├─3349 /usr/sbin/httpd -DFOREGROUND
├─3350 /usr/sbin/httpd -DFOREGROUND
├─3351 /usr/sbin/httpd -DFOREGROUND
├─3352 /usr/sbin/httpd -DFOREGROUND
└─3353 /usr/sbin/httpd -DFOREGROUND

Oct 07 12:25:18 rhel8dev.test systemd[1]: Starting The Apache HTTP Server...
Oct 07 12:25:18 rhel8dev.test httpd[3349]: Server configured, listening on: port>
Oct 07 12:25:18 rhel8dev.test systemd[1]: Started The Apache HTTP Server.

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

[root@rhel8dev ~]# systemctl stop httpd

Opět uvidíte, že s tímto příkazem není spojen žádný výstup, takže musíme použít status příkaz ke kontrole, že "stop" bylo úspěšné.

Otevřete brány firewall

Protože se jedná o webový server, musíme se ujistit, že porty jsou otevřené a naslouchají webovému provozu (HTTP a HTTPS). Abychom tyto porty povolili, musíme vytvořit pravidlo v linuxovém firewallu (a případně i firemních firewallech), jak je znázorněno zde:

[root@rhel8dev ~]# firewall-cmd --zone=public --permanent --add-service=http
success
[root@rhel8dev ~]# firewall-cmd --zone=public --permanent --add-service=https
success
[root@rhel8dev ~]# firewall-cmd --reload
success

Konfigurace a protokoly

Jakmile ověříte, že vše funguje a možná budete chtít (potřebovat) změnit základní konfigurační nastavení. Chcete-li to provést, vyhledejte httpd.conf . Ve výchozím nastavení jej najdete zde:

[root@rhel8dev conf]# cd /etc/httpd/conf
[root@rhel8dev conf]# ls -lrt
total 28
-rw-r--r--. 1 root root 11899 Aug 29 11:15 httpd.conf
-rw-r--r--. 1 root root 13077 Aug 29 11:17 magic

A konečně, když (ne pokud) se něco pokazí, budete chtít vědět, kde hledat, abyste mohli začít s řešením problému. Dva protokoly, které budete chtít zobrazit, jsou error_log (který zaznamenává všechny problémy, které se vyskytnou, a někdy vygeneruje opravu, která bude implementována) a access_log (který zaznamenává všechny požadavky na přístup k serveru a může také pomoci při odstraňování problémů). Ve výchozím nastavení se oba tyto soubory nacházejí zde:

[root@rhel8dev logs]# cd /etc/httpd/logs
[root@rhel8dev logs]# ls -lrt
total 4
-rw-r--r--. 1 root root 0 Oct 7 12:25 access_log
-rw-r--r--. 1 root root 1002 Oct 7 12:27 error_log

Další zdroje

Doufejme, že se v této situaci nikdy neocitnete. Pokud to však uděláte, nyní máte stavební bloky potřebné k zahájení správy Apache. Pro více informací (které budete potřebovat) prosím navštivte oficiální stránku dokumentace Apache zde.


Linux
  1. Služba operačního systému Linux „nfs“

  2. Služba operačního systému Linux „microcode_ctl“

  3. Služba Linux OS „NetFS“

  1. Restartujte Apache

  2. Služba Linux OS „ldap“

  3. Služba OS Linux „yppasswdd“

  1. Služba operačního systému Linux „dhcpd“

  2. Služba Linux OS „anacron“

  3. Linux OS Service „iptables“