GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat a nakonfigurovat webový server Apache na Ubuntu 13.10

Nainstalujte webový server Apache

Před chvílí jsem aktualizoval své ubuntu na 13.10 a pak se instalace Apache php pokazila. Musel jsem jej tedy rychle přeinstalovat, abych mohl pokračovat v práci na svých php projektech.

Apache je v ubuntu repozitářích, takže jej lze nainstalovat bez velkého úsilí. Zde je rychlý příkaz, který potřebujete ke střelbě na terminál.

$ sudo apt-get install apache2

Apache se ve výchozím nastavení rychle nakonfiguruje, takže jej můžete otevřít z prohlížeče pomocí adresy URL localhost

http://localhost/

Spustit/zastavit Apache

Chcete-li spustit nebo zastavit webový server apache z příkazového řádku, použijte následující příkazy.

# Spustit webový server$ službu sudo apache2 start# Zastavit webový server$ službu sudo apache2 stop# Restartovat webový server$ službu sudo apache2 restart# Znovu načíst konfiguraci bez restartu$ služba sudo apache2 reload

Výchozí webový kořenový adresář je /var/www. Takže všechny soubory umístěné v tomto adresáři jsou přístupné z adresy URL localhost. Později zkontrolujeme, jak změnit výchozí webový kořenový adresář

Chcete-li zkontrolovat, jaká verze apache je nainstalována, použijte příkaz apache2 s volbou v/

Verze $ apache2 -vServer:Apache/2.4.6 (Ubuntu) Server sestaven:9. srpna 2013 14:28:56

Najděte konfigurační soubory

Chcete-li získat další informace o tom, jak přesně je na vašem systému nakonfigurován Apache, použijte příkaz apache2ctl.

$ apache2ctl -VAH00558:apache2:Nelze spolehlivě určit plně kvalifikovaný název domény serveru pomocí 127.0.1.1. Nastavte direktivu 'ServerName' globálně, aby byla tato zpráva potlačena Verze serveru:Apache/2.4.6 (Ubuntu) Server postaven:9. srpna 2013 14:28:56 Magické číslo modulu serveru:20120211:23Server načten:APR 1.4.8, APR-UTIL 1.5 .2Zkompilováno pomocí:APR 1.4.8, APR-UTIL 1.5.2Architektura:64-bit Server MPM:předforkovaný:ne rozvětvený:ano (proměnný počet procesů) Server zkompilován s.... -D APR_HAS_SENDFILE -D APR_HAS_MMAP -D APR_HAVE IPV4 -mapované adresy povoleny) -D APR_USE_SYSVSEM_SERIalize -D APR_USE_PTHREAD_SERIalize -D Single_Listelialized_accept -d apr_has_other_child -d apyec/ap -ap -ap -ap -ap -ap -ap -ap -at -ap -ap -ap -at -ap -at -ap -at -ap -at -ap -ap -at -ap -ap -at -ap -ap -ap -eeyc/ap -ap -ap -ap -ap -ap -ap -ap -ethy. -D DEFAULT_PIDLOG="/var/run/apache2.pid" -D DEFAULT_SCOREBOARD="logs/apache_runtime_status" -D DEFAULT_ERRORLOG="protokoly/chyby" -D AP_TYPES_CONFIG_FILE="mime.types" -D SERVER_CONFIG2_FILE" ......

Říká název konfiguračního souboru, používaný server mpm a spoustu dalších podrobností. Ty jsou užitečné při další konfiguraci Apache.

Hlavní konfigurační soubor se nachází na /etc/apache2/apache2.conf
Stačí přidat HTTPD_ROOT před SERVER_CONFIG_FILE, abyste získali skutečné umístění konfiguračního souboru.

Nebo existuje další možnost S, která také hlásí různé konfigurační podrobnosti o apache

$ apache2ctl -SAH00558:apache2:Nelze spolehlivě určit plně kvalifikovaný název domény serveru pomocí 127.0.1.1. Globálně nastavte direktivu 'ServerName', aby byla tato zpráva potlačena Konfigurace virtuálního hostitele:*:80 je výchozí server Localhost NameVirtualHost (/etc/apache2/sites-enabled/000-default.conf:1) port 80 namevhost localhost (/etc/apache2/ sites-enabled/000-default.conf:1) port 80 namevhost localhost (/etc/apache2/sites-enabled/000-default.conf:1)ServerRoot:"/etc/apache2"Main DocumentRoot:"/var/www "Main ErrorLog:"/var/log/apache2/error.log"Mutex default:dir="/var/lock/apache2" mechanism=fcntlMutex mpm-accept:using_defaultsMutex watchdog-callback:using_defaultsMutex rewrite-map:using_defaults/PidFile:" var/run/apache2/apache2.pid"Definovat:DUMP_VHOSTSDefine:DUMP_RUN_CFGUser:name="www-data" id=33 not_usedGroup:name="www-data" id=33 not_usedUser:name="www-data" id=33 not_usedGroup:name="www-data" id=33 not_used

Všechny tyto informace jsou velmi užitečné při nastavování apache. Šetří čas, který byste jinak strávili hádáním.

S apache je spojeno mnoho konfiguračních souborů. Hlavním konfiguračním souborem je "apache2.conf", jak je uvedeno výše. Tento konfigurační soubor obsahuje pokyny k načtení dalších konfiguračních souborů. Zde je řádek, který to dělá.

# Zahrnout obecné úryvky příkazůIncludeVolitelné conf-enabled/*.conf# Zahrnout konfigurace virtuálního hostitele:IncludeVolitelné stránky-povoleno/*.conf

Opravit chybovou zprávu

Apache ve výchozím nastavení zobrazuje následující chybovou zprávu

AH00558:apache2:Nelze spolehlivě určit plně kvalifikovaný název domény serveru pomocí 127.0.1.1. Chcete-li tuto zprávu potlačit, nastavte direktivu 'ServerName' globálně

Chcete-li to vyřešit, nastavte proměnnou ServerName na název hostitele nebo plně kvalifikovaný název domény v konfiguračním souboru Apache

$ sudo nano /etc/apache2/apache2.conf

Přidejte následující řádek na konec

ServerName yourhostname

Znovu načtěte konfiguraci Apache

$ sudo service apache2 reload

Změnit webový kořenový adresář

Chcete-li změnit kořenový adresář webu, musíme změnit nastavení v konfiguračních souborech „sites-enabled“. Jako standardní postup je pro každého virtuálního hostitele vytvořen samostatný konfigurační soubor uvnitř adresáře s povolenými lokalitami.

Virtuální hostitel je doména. Apache tedy může obsluhovat více domén. V tomto příkladu však použijeme pouze výchozí konfigurační soubor.

V adresáři /etc/apache2/sites-enabled by měl být soubor s názvem 000-default.conf. Pokud tam není, zkopírujte jej z /etc/apache2/sites-available. Soubor zpočátku vypadá takto.

... #ServerName www.example.com ServerAdmin [email protected] DocumentRoot /var/www # Dostupné úrovně protokolů:trace8, ..., trace1, ladění, info, upozornění, varování, # error, crit, alert, emerg. # Je také možné nakonfigurovat úroveň logování pro jednotlivé # moduly, např. #LogLevel info ssl:warn ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log kombinované...

Změňte cestu DocumentRoot na nový webový kořenový adresář, který chcete použít. Uložte soubor a restartujte apache.

$ sudo service apache2 restart

Nyní zkuste získat přístup k localhost. Pokud to nefunguje, zkontrolujte protokol chyb na adrese

$ cat /var/log/apache2/error.log

Od Apache 2.4.3 existuje bezpečnostní funkce, která brání Apache v přístupu k jiným adresářům. A pak by adresa URL localhost zobrazila chybovou zprávu „Zakázáno“ a protokol chyb by obsahoval zprávu jako je tato

[Ne Nov 03 11:25:24.521491 2013] [authz_core:error] [pid 6950] [klient 127.0.0.1:41078] AH01630:klient byl odepřen konfigurací serveru:/var/www/phpinfo.php
 

Chyba znamená, že apache není schopen přistupovat do kořenového adresáře webu kvůli nějaké konfiguraci. Chcete-li tento problém vyřešit, přidejte do konfigurace vhost

následující
 Objednávka povolit, zakázat Povolit všem # Nová direktiva potřebná v Apache 2.4.3:Vyžadovat uděleno vše
Problém řeší direktiva "Vyžadovat". Novější verze Apache (2.3+) vyžadují k povolení přístupu direktivu „Require“.

Finální soubor 000-default.conf by měl vypadat takto

... #ServerName www.example.com ServerAdmin [email protected] DocumentRoot /var/www2 # Dostupné úrovně protokolu:trace8, ..., trace1, ladění, info, upozornění, varování, # error, crit, alert, emerg. # Je také možné nakonfigurovat úroveň logování pro jednotlivé # moduly, např. #LogLevel info ssl:warn ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined... # Nová direktiva potřebná v Apache 2.4.3: Povolení objednávky, deny Allow from all # Nová direktiva potřebná v Apache 2.4.3:Vyžadovat uděleno vše

Nyní znovu restartujte apache a nový webový kořenový adresář by měl konečně fungovat.

Přidání dalších vhostů nebo domén

Chcete-li přidat více virtuálních hostitelů, vytvořte další konfigurační soubory, jako je 000-default.conf, a pojmenujte je jinak než s příponou conf. V každém souboru nastavte jedinečný název serveru a každému hostiteli přidělte samostatný webový kořenový adresář.

Alternativně vytvořte konfigurační soubor v adresáři sites-available a použijte příkaz a2ensite pro povolení webu. Vytvoří potřebné symbolické odkazy v adresáři „sites-enabled“.

Nejprve tedy vytvořte konfigurační soubor zkopírováním výchozího konfiguračního souboru.

$ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/mysite.conf

Podle potřeby upravte konfigurační soubor. Důležité je změnit kořen dokumentu pro nový web.
Potom jej povolte pomocí příkazu a2ensite

$ sudo a2ensite mysite

Restartujte apache. A nový web by měl fungovat dobře.

Povolit soubor htaccess

Soubor htaccess umožňuje za běhu upravovat různé konfigurační parametry Apache na bázi adresářů. Ve výchozím nastavení není apache nakonfigurován pro použití souboru htaccess. Chcete-li to provést, jednoduše přidejte následující řádek do sekce Adresář zobrazené výše.

AllowOverride FileInfo

Výše uvedené řekne apache, aby začal číst soubory htaccess a analyzoval konfigurační instrukce v nich napsané.

Konečná konfigurace by mohla vypadat takto -

 Objednávka povolit, odepřít Povolit všem AllowOverride FileInfo # Nová direktiva potřebná v Apache 2.4.3:Vyžadovat vše uděleno

Po instalaci apache možná budete chtít nainstalovat další věci, jako je php, mysql, phpmyadmin v závislosti na tom, co všechno potřebujete. Tak směle do toho a užijte si to!!


Ubuntu
  1. Jak nainstalovat a nakonfigurovat server NFS na Ubuntu 20.04

  2. Jak nainstalovat a nakonfigurovat server DHCP na Ubuntu 20.04

  3. Jak nainstalovat a nakonfigurovat server Redis v Ubuntu

  1. Jak nainstalovat a nakonfigurovat VNC na Ubuntu 20.04

  2. Jak nainstalovat a nakonfigurovat VNC na Ubuntu 18.04

  3. Jak nainstalovat a nakonfigurovat server NFS na Ubuntu 18.04

  1. Jak nainstalovat a nakonfigurovat Nginx na Ubuntu 18.04 / Debian 9

  2. Jak nainstalovat a nakonfigurovat Apache Hadoop na Ubuntu 20.04

  3. Jak nainstalovat a nakonfigurovat DHCP na Ubuntu 18.04