Apache Návody pro Začátečníky

Co je Apache?

Apache je pozoruhodný kus aplikačního softwaru. Jedná se o nejrozšířenější webovou serverovou aplikaci na světě s více než 50% podílem na komerčním trhu webových serverů. Apache je nejrozšířenější aplikace webového serveru v unixových operačních systémech, ale může být použita téměř na všech platformách, jako jsou Windows, OS X, OS/2 atd., Slovo, Apache, byl převzat ze jména domorodého amerického kmene ‚Apache‘, známý pro své dovednosti v oblasti válčení a strategie tvorby.

jedná se o modulární, procesně založenou webovou serverovou aplikaci, která vytváří nové vlákno s každým současným připojením. To podporuje množství funkcí, mnoho z nich jsou sestaveny jako samostatné moduly a rozšířit své základní funkce, a může poskytnout vše, co z straně serveru programovací jazyk, podpora autentizačního mechanismu. Virtuální hosting je jedna taková funkce, která umožňuje jedinému webovému serveru Apache sloužit řadě různých webových stránek.,

Jak nainstalovat Apache

Existuje mnoho způsobů, jak instalaci balíčku nebo aplikace. Tam jsou zařazeny pod –

  1. Jednou z funkcí tohoto open source webové aplikace je, že někdo může udělat instalační jako za své vlastní prostředí. To umožnilo různým dodavatelům, jako je Debian, Red Hat, FreeBSD, Suse atd. přizpůsobit umístění souboru a konfiguraci apache s přihlédnutím k dalším nainstalovaným aplikacím a základnímu OS.,
  2. kromě instalace z instalačního programu založeného na dodavateli je vždy možnost sestavení a instalace ze zdrojového kódu. Instalace Apache ze zdrojového souboru je platforma nezávislá & pracuje pro všechny OS.

webový server apache je modulární aplikace, kde si správce může vybrat požadovanou funkčnost a nainstalovat různé moduly podle svého požadavku.,

všechny moduly lze kompilovat jako dynamické Sdílené objekty (DSO je objektový soubor, který by mohl být sdílen více aplikacemi při jejich provádění), který existuje odděleně od hlavního souboru apache. DSO přístup je vysoce doporučeno, to dělá úkol přidávání/odebírání / aktualizace modulů z konfigurace serverů velmi jednoduché.

Instalovat Apache:Linux Platforma

Na Red Hat nebo rpm systémech založených na systému,

Pokud používáte rpm (RedHat Package Manager je nástroj pro instalaci aplikace na systémy Linux), založené distribuce Linuxu, tj., Red Hat, Fedora, CentOs, Suse, můžete si nainstalovat tuto aplikaci buď specifické pro dodavatele Správce balíčků nebo přímo budování rpm soubor z dostupných zdroj archiv.

Apache můžete nainstalovat pomocí výchozího správce balíčků, který je k dispozici ve všech distribucích založených na Red Hat, jako jsou CentOs, Red Hat a Fedora.

# yum install httpd

zdrojový tarball apache lze převést na soubor rpm pomocí následujícího příkazu.

# rpmbuild -tb httpd-2.4.x.tar.bz2

je nutné mít na serveru nainstalován balíček-devel pro vytváření .rpm soubor ze zdroje.,

jakmile převedete zdrojový soubor do instalátoru rpm, můžete použít následující příkaz k instalaci Apache.

# rpm –ivh httpd-2.4.4-3.1.x86_64.rpm

Po instalaci se server nespustí automaticky, za účelem spuštění služby, budete muset použít některý z následujících příkazů na Fedora, CentOs nebo Red Hat.

# /usr/sbin/apachectl start# service httpd start# /etc/init.d/httpd start

nainstalujte Apache ze zdroje

Instalace apache ze zdroje vyžaduje, aby byl balíček-devel nainstalován na vašem serveru. .Nejnovější dostupnou verzi Apache najdete zde ., Po stažení zdrojového souboru jej přesuňte do složky/usr/local / src.

Chcete-li zobrazit všechny možnosti konfigurace dostupné pro Apache, můžete použít ./ configure-možnost nápovědy. Nejběžnější možností konfigurace je-prefix={install directory name}.

výše uvedený příklad ukazuje kompilaci Apache v adresáři / usr / local / apache se schopností DSO. Možnost-enable-so může načíst požadované moduly do apache v době běhu pomocí mechanismu DSO, spíše než vyžadovat rekompilaci.,

po dokončení instalace můžete procházet výchozí stránku webových serverů pomocí svého oblíbeného prohlížeče. Pokud je na vašem serveru povolena brána firewall,musíte udělat výjimku pro port 80 na firewallu OS. K otevření portu 80 můžete použít následující příkaz.

iptables -I INPUT -p tcp --dport 80 -j ACCEPT

service iptables save

výchozí uvítací obrazovku Apache2 můžete vidět procházením IP adresy serveru.

co je virtuální hostitel?

webový server Apache může hostit více webových stránek na stejném serveru., Pro každý web nepotřebujete samostatný serverový stroj a software apache. Toho lze dosáhnout pomocí konceptu virtuálního hostitele nebo VHost.

každá doména, kterou chcete hostit na webovém serveru, bude mít samostatný záznam v konfiguračním souboru apache.

Druhy Apache Virtualhost

  1. Jméno založené Virtuální hostitel
  2. Adresa na bázi nebo na bázi IP virtuální hostitel a.

virtuální hostitel založený na názvu

virtuální hosting založený na názvu se používá k hostování více virtuálních webů na jedné IP adrese.,

aby bylo možné nakonfigurovat jméno založené virtuální hosting, musíte nastavit IP adresu, na které budete přijímat Apache žádosti pro všechny požadované webové stránky. Můžete to udělat podle směrnice NameVirutalHost v konfiguraci apache, tj.conf / apache2.konfederace.

Apache virtual host příklad:

můžete přidat tolik virtuálních hostitelů, podle vašeho požadavku., Můžete zkontrolovat své webové konfigurační soubory:

#httpd –tSyntax OK

Pokud konfigurační soubor má nějaké špatné syntaxe, bude to házet chybu,

IP-based Virtuálního hostitele

pro nastavení IP based virtuální hosting, budete potřebovat více než jednu IP adresu nakonfigurován na serveru. Takže počet vhost apache bude závisetpočet IP adresy nakonfigurované na vašem serveru. Pokud má váš server 10 IP adres,můžete vytvořit 10 virtuálních hostitelů založených na IP.

ve výše uvedeném diagramu dva webové stránky example1.,Kom a example2.com byly přiřazeny různé IP adresy a používají virtuální hosting založený na IP.

co Apache potřebuje ke spuštění Php souboru?

spuštění Php souborů na Apache potřebuje mod_php povoleno na vašem serveru. Umožňuje Apache interpretovat .Php soubory. Má PHP manipulátory, které interpretují PHP kód v apache a odeslat HTML na váš webový server.

Pokud je na vašem serveru povolen mod_php, budete mít soubor s názvem php.conf in / etc / httpd / conf.d / adresář., Můžete také zkontrolovat s:

httpd -M | grep "php5_module"

výstup bude podobný:

Php manipulátory v Apache

  • mod_php
  • CGI
  • FastCGI
  • suPHP

mod_phpis nejstarší PHP handler, to je PHP součástí apache a nevyžaduje žádné externí PHP proces. Tento modul je ve výchozím nastavení nainstalován v každém distribučním úložišti Linuxu, takže povolení/zakázání tohoto modulu je velmi snadné.,

Pokud používáte FastCGI jako PHP handler, můžete nastavit více verzí PHP, které mají být použity různými účty na vašem serveru. mod_fastcgi je rozšíření mod_fcgid, kde jako mod_fcgid je vysoce výkonná alternativa CGI, tj. mod_cgi . Začíná dostatečný počet instancí CGI pro zpracování souběžných webových požadavků. Používá také suexec k podpoře různých uživatelů s vlastními instancemi PHP a zlepšuje zabezpečení webu.

spuštění ruby souborů na Apache potřebuje mod_ruby být povolen. Apache může také zpracovávat ruby soubory přes FastCGI., Je možné použít více verzí ruby pomocí mod_fcgid, tj. FastCGI.

můžete také nainstalovat Apache passenger a nakonfigurovat Apache tak, aby jej používal pro servírování rubínových stránek.

(Phusion Passenger také známý jako „cestující“ je bezplatný webový server modulu, který je navržen pro integraci s Apache a Nginx )

Kroky k instalaci mod_ruby na vašem serveru –

Jak spustit Ruby s Apache

Musíme přidat mod_ruby modul do Apache konfigurace, tj. /etc/httpd/conf.d / ruby.conf a přidejte následující řádek.

LoadModule ruby_module modules / mod_ruby.,takže

Pokud chcete tyto moduly povolit nebo zakázat, musíte upravit konfigurační soubor apache a tyto moduly komentovat nebo odkomentovat, pokud je webový server již kompilován s těmito moduly.

Jak Zabezpečit Webový Server Apache

Zajištění vaše webový server, je velmi důležité, to znamená, že umožňuje, aby ostatní viděli pouze určené informace & ochrana dat a omezení přístupu.

to jsou běžné věci, které zvyšují bezpečnost webových serverů Apache.,

1) Skrytí verze Apache a informací o OS:

Apache zobrazuje jeho verzi a název operačního systému v chybách, jak je znázorněno na níže uvedeném snímku obrazovky.

hacker může tyto informace použít k útoku pomocí veřejně dostupných zranitelností v konkrétní verzi serveru nebo OS.

aby se zabránilo Apache webserverfromdisplaying tyto informace, musíme změnit

„server podpis“ možnost k dispozici v konfiguračním souboru apache., Ve výchozím nastavení je „zapnuto“, musíme jej nastavit“vypnuto“.

vim /etc/httpd/conf/httpd.conf
ServerSignature OffServerTokens Prod

po úpravě konfiguračního souboru musíte restartovat/znovu načíst webový server apache, aby byl efektivní.,

service httpd restart

2) Zakázat Výpis Adresáře

Pokud je váš dokument kořenový adresář nemá index souboru, ve výchozím nastavení apache web server zobrazí všechny obsah dokumentu kořenový adresář.

Tato funkce může být vypnout pro konkrétní adresáře přes „možnosti směrnice“ je k dispozici v konfiguračním souboru Apache.,

<Directory /var/www/html> Options -Indexes</Directory>

3) Zakázání nepotřebných modulů

To je dobrá praxe, aby se vypnout všechny nepotřebné moduly, které nejsou v použití. Můžete vidět seznam povolen modul k dispozici ve vašem konfiguračním souboru apache –

Mnoho z uvedených modulů lze vypnout likemod_imap, mod_include, mod_info, mod_userdir, mod_autoindex, jako jsou sotva používá jakoukoli výrobu webových serverů.

vi /etc/httpd/conf/httpd.conf#LoadModule auth_digest_module modules/mod_auth_digest.so

jakmile modul komentujete, uložte soubor.,

restartujte služby apache pomocí následujícího příkazu.

/etc/init.d/httpd restart

4) Omezení Přístupu k souborům mimo web root directory

Pokud chcete, aby se ujistil, že soubory, které je mimo web root adresáře nejsou přístupné, budete muset ujistěte se, že adresář je omezen na „Povolit“ a „Zakázat možnost“ v konfiguraci webového serveru soubor.

<Directory/>Options NoneAllowOverride NoneOrder deny,allowDeny from all</Directory>

Jakmile jste omezit přístup mimo web root adresář, nebude schopen získat přístup libovolný soubor umístěn na jakékoliv jiné složky na vašem webovém serveru, budete mít 404 návratový kód.,

5) Pomocí mod_evasive k vyvrácení DoS útok

Pokud chcete chránit váš webový server ze systému Dos (tj. Denial of Service) musíte povolit modul mod_evasive. Jedná se o modul třetí strany, který detekuje útok Dos a zabraňuje útoku v tom, aby způsobil tolik škody, jako by to udělal, kdyby nechal spustit svůj kurz. Lze jej stáhnout zde.,

ke Stažení Soubor výše

6) Pomocí mod_security pro zvýšení zabezpečení apache

Tento modul pracuje jako firewall pro Apache a umožňuje sledovat provoz v reálném čase. Zabraňuje také webovému serveru před útoky hrubou silou. Modul mod_security by mohl být nainstalován s výchozím správcem balíčků vaší distribuce.

7) Omezit velikost požadavku

Apache nemá žádné omezení na celkovou velikost http požadavku, který by mohl vést k DoS útoku., Můžete omezit velikost požadavku směrnice Apache „LimitRequestBody“ s adresářovou značkou. Hodnotu lze nastavit od 0 do 2 GB (tj. 2147483647 bajtů) podle vašeho požadavku.

<Directory "/var/www/html/uploads"> LimitRequestBody 512000</Directory>

formát protokolu Apache

protokoly Apache poskytují podrobné informace, které pomáhají detekovat běžné problémy se serverem.

aby bylo možné vytvářet přístupové protokoly, musí být povolena mod_log_configmodule.

tři směrnice dostupné v konfiguračním souboru apache, tj.

  • TransferLog: vytvoření souboru protokolu.
  • LogFormat: zadání vlastního formátu.,
  • CustomLog: vytvoření a formátování souboru protokolu.

směrnice TransferLog je k dispozici v konfiguračním souboru apache a otáčí soubory protokolu virtuálního hostitele podle nastavených parametrů.

dva typy formátu protokolu Apache

  • běžný formát protokolu
  • kombinovaný formát protokolu.

můžete je povolit úpravou konfiguračního souboru apache, tj.conf (Debian / ubuntu) nebo httpd.,conf (rpm based systems) file

Common Log Format

LogFormat "%h %l %u %t \"%r\" %>s %b" commonCustomLog logs/access_log common

Common Log generované Apache

 client denied by server configuration: /export/home/live/ap/htdocs/test

Kombinované Formát Protokolu

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" combinedCustomLog log/access_log combined

Tady,

  • %h je vzdálený hostitel
  • %l je identita uživatele, určena identd
  • %u je jméno uživatele, určuje HTTP autentizace
  • %t je čas serveru dokončila zpracování požadavku.
  • %r je poptávkový řádek od klienta. („GET / HTTP / 1.,0“)
  • %> s je stavový kód odeslaný ze serveru klientovi (500, 404 atd.)
  • %b je velikost odpovědi na klienta (v bajtech)
  • Referer je stránka, která souvisí s touto adresou URL.
  • User-agent je identifikační řetězec prohlížeče.

kombinovaný protokol generovaný Apache:

vlastní protokol vytváří samostatný soubor protokolu pro každého virtuálního hostitele na vašem serveru. Musí být zadán v sekci virtuálního hostitele konfiguračního souboru.,

můžete vidět níže uvedenou konfiguraci virtuálního hostitele, generovaný protokol bude pro tohoto virtuálního hostitele vlastní a formát bude kombinován.

nakonfigurujte svůj první produkční Web Sever

1. Chcete-li mít spuštěný produkční webový server, potřebujete vyhrazený uzel (fyzická/virtuální nebo cloudová instance) se systémem Linux/Unix, Windows, MacOS atd.

2. Webový Server musí mít na něm nakonfigurované přímé síťové připojení a statickou adresu.

3., Musí mít všechny moduly potřebné pro spuštění webových stránek. Pokud webový server zpracovává stránky PHP, musí mít povolen modul PHP.

  1. také potřebuje mít dobrý Antivirový program nakonfigurován a spuštěn pro zabezpečení Webového Serveru před Malware nebo Virus útoky. Musíte také pravidelně aktualizovat nakonfigurovanou antivirovou / anti malware aplikaci bez jakéhokoli ručního zásahu, abyste z nich získali maximální užitek.,
  2. Pokud máte stovky domén umístěn na webovém serveru, musíte mít k provedení omezení souborového systému kvót pro jednotlivé domény, počtu databází každou doménu můžete vytvořit, počet e-mailové účty na doméně, atd.
  3. pokud byl váš webový server nastaven pro sdílené hostingové služby, uživatelé na vašem webovém serveru musí být omezeni. Sdílený hosting uživatel by měl mít nejméně oprávnění uživatele tak, že nemá poškodit důležité soubory & rozbít celý server., Apache neposkytuje žádné takové funkce a potřebuje různé aplikace třetích stran, přizpůsobení operačního systému k dosažení tohoto cíle.
  4. pokud přidáváte novou doménu na webovém serveru, je třeba upravit stovky konfiguračního souboru, aby všechny funkce pro přidanou doménu.
  5. Pokud jeden z hostovaných domén vyžaduje různé PHP nastavení, než zbytek oblastech, provádění této v jádru Apache web server je velmi komplexní a vyžaduje přizpůsobení webového serveru ve velké míře.,
  6. produkční webový server potřebuje firewall blokovat nežádoucí provoz, který by mohl způsobit vysoké zatížení na serveru. Implementace IPTABLE pravidel s příkazovým řádkem je velmi složitá. Potřebuje odborné znalosti prostředí core Linux / Unix, aby bylo možné psát efektivní pravidla brány firewall pro blokování nežádoucího provozu. IPTABLE je založen na modulu netfilter; jedná se o firewall na úrovni OS, který umožňuje správci vytvářet pravidla pro příchozí / odchozí provoz na serveru.
  7. produkční webový server vyžaduje několik různých aplikací, jako je E-mail, FTP pro nahrávání souborů, systém názvů domén pro zaparkované domény., Správa všech těchto aplikací v jádrovém systému Linux / Unix vyžaduje odborné znalosti o příslušných technologiích.

Tak, dá se říci, že výkonný webový server pro více domén, je velmi složitý úkol a vyžaduje úpravu stovky konfigurační soubor, přizpůsobení každé aplikaci splnit požadovaný výsledek. Řešení problémů s jakoukoli konfigurací chyb bude pro začátečníky velmi obtížné.

řešení používající Cpanel nebo podobný software

Cpanel poskytuje grafický způsob správy webového serveru., Má poskytovat hromadné hostingové služby, které se snadno používají a konfigurují. společnost cPanel snížila technické překážky vstupu do správy hostingu a webového serveru. To dělá složitý úkol jednodušší, poskytuje mnoho užitečných a snadno použitelné webové rozhraní, které provádějí běžné úlohy správy systému potřebné pro provoz webového serveru.

cPanel sestavuje vlastní verzi softwaru.

Pokud musíte svůj webový server překompilovat, tj., apache na normální platformě Linux musíte ručně vybrat/vyhledat požadovaný modul. cPanel poskytuje funkce Easyapache, která je metodou kompilace webového serveru založenou na skriptu.

To poskytuje nejen webové služby, ale také e-Mail, DNS, FTP a mnoho dalších služeb, které je nutné pro vaše webové aplikace.,

úkol, který potřebuje odborné znalosti na jádro Linux/Unix based hosting, jako je instalace SSLs, recompiling Apache s různými moduly PHP, aktualizace Webu, Zabezpečení, konfigurace efektivní IPTABLE pravidel, Přidání ftp uživatele, vytvářet e-mailové účty pro každou doménu, skenování dokumentu kořen s antivirus a vytváření databází jsou snadno kompletní s cPanel.

poskytuje mnoho skriptů, které opravují, instalují a odstraňují běžné administrativní úkoly.

poskytuje funkci zálohování a obnovení, což eliminuje potřebu ručně kopírovat soubory do záložního úložiště., Pokud zálohujete svou doménu, cPanel vytvoří soubor tar, který bude obsahovat kořenovou složku dokumentu, e-mailové účty a e-maily, účty ftp, databáze, záznamy DNS a další aplikace.

poskytuje také robustní dokumentaci amá velmi velkou komunitu uživatelů, kde můžete diskutovat a získat řešení vašich problémů.

takže lze říci, že cPanel je nejlepší aplikace pro správu webového serveru s požadovanými funkcemi. Poskytuje vám, snadno použitelné rozhraní pro správu vaší domény a mechanismus, který zabraňuje složitosti správy webového serveru core.,

existuje mnoho konkurenčních produktů pro cPanel jako Plesk, ISPConfig, Ajenti, Kloxo, Open Panel, Zpanel atd.

Leave a Comment