Előfeltételek
Telepítse az Apache 2.4 webszervert
Indexek letiltása
Felhasználói könyvtárak
Virtuális Gazdagépek
Előfeltételek
- Egy Vultr szerver, amely a legfrissebb Arch Linuxot futtatja. További információért tekintse meg ezt az útmutatót .
- Sudo hozzáférés.
- A rootként futtatandó parancsok előtagja a
#, a normál felhasználóként futtatható parancsok előtagja pedig a $. A parancsok rootként való futtatásának javasolt módja az, hogy normál felhasználóként mindegyiket előtaggal írja elő sudo.
- Telepítsen egy szövegszerkesztőt, és ismerje azt, például
vi, vim, nano, emacsstb.
Telepítse az Apache 2.4 webszervert
Ha tűzfalat használ, engedélyeznie kell a bejövő TCP-forgalmat a portra 80.
Az Apache telepítése:
# pacman -S apache
Indítsa el az Apache-ot, és indítsa el minden rendszerindítás után:
# systemctl enable --now httpd
Teszteld, hogy fut-e az Apache. Látogassa http://YOUR-SERVER-WEB-ADDRESS-OR-IPmeg a webhelyet, és megjelenik egy oldal, amelyen az „Index /” látható. Futtassa, ip addrha tudnia kell az IP-címet.
Az Apache konfigurációs fájlja /etc/httpd/conf/httpd.conf. Bár az Apache-t a root felhasználó User httpindítja el, biztonsági okokból azonnal átvált e felhasználóként való futtatásra. DocumentRoot "/srv/http"beállítja, hogy hol keresse a webfájlokat. CustomLog "/var/log/httpd/access_log" commonbeállítja, hogy a sikeres Apache-hozzáférések naplózva legyenek. ErrorLog "/var/log/httpd/error_log"beállítja, hogy az Apache-hoz való hozzáférés hol kerül naplózásra.
Indexek letiltása
Alapértelmezés szerint, ha az Apache olyan könyvtárat kap, amelyben nem talál olyan kiterjesztésű indexfájlt, amelyre be van állítva, akkor automatikusan létrehoz egy indexet, amely a könyvtár tartalmát mutatja. Ez biztonsági résnek tekinthető. A letiltásához szerkessze, /etc/httpd/conf/httpd.confmajd belül <Directory "/srv/http">, innen Options, törölje Indexes. Újraindítás után az Apache a "Hozzáférés tiltva!" hibaüzenet, hacsak nem /srv/http/index.htmllétezik hasonló fájl .
Indítsa újra az Apache-ot:
# systemctl restart httpd
Felhasználói könyvtárak
Alapértelmezés szerint a felhasználói ~/public_html/címtár a következő helyen jelenik meg: http://YOUR-SERVER-WEB-ADDRESS-OR-IP/~USERNAME/. De a felhasználónak httpfuttatható bit hozzáféréssel kell rendelkeznie a felhasználói könyvtárhoz és annak public_htmlkönyvtárához:
$ mkdir ~/public_html
$ chmod o+x ~/
$ chmod o+x ~/public_html
Ezenkívül a felhasználónak httpolvasási hozzáféréssel kell rendelkeznie az egyes fájlokhoz. Ha szükséges, futtassa a következő parancsot:
$ chmod o+r ~/public_html/<FILES>
Ha le szeretné tiltani, hogy a felhasználói public_htmlkönyvtárak a webszerveren legyenek, függetlenül a könyvtár- és fájlengedélyektől, írja be ezt a sort (adja hozzá #az elejéhez) itt /etc/httpd/conf/httpd.conf:
Include conf/extra/httpd-userdir.conf
Indítsa újra az Apache-ot:
# systemctl restart httpd
Virtuális Gazdagépek
Ugyanarról az Apache-kiszolgálóról több tartománynevet is tárolhat, és különböző tartalmakat szolgálhat ki.
Hozzon létre egy mappát a virtuális gazdagép konfigurációinak tárolására:
# mkdir /etc/httpd/conf/vhosts
Hozzon létre egy konfigurációs fájlt minden virtuális gazdagéphez, például /etc/httpd/conf/vhosts/YOUR-DOMAIN-NAME.com:
<VirtualHost *:80>
ServerAdmin webmaster@YOUR-DOMAIN-NAME.com
DocumentRoot "/srv/YOUR-DOMAIN-NAME.com"
ServerName YOUR-DOMAIN-NAME.com
ServerAlias YOUR-DOMAIN-NAME.com
ErrorLog "/var/log/httpd/YOUR-DOMAIN-NAME.com-error_log"
CustomLog "/var/log/httpd/YOUR-DOMAIN-NAME.com-access_log" common
<Directory "/srv/YOUR-DOMAIN-NAME.com">
Require all granted
</Directory>
</VirtualHost>
Készítse el a virtuális gazdagép kiszolgálási könyvtárát:
# mkdir /srv/YOUR-DOMAIN-NAME.com
A végén adja meg /etc/httpd/conf/httpd.confaz alábbi virtuális gazdagép konfigurációs fájlokat:
Include conf/vhosts/YOUR-DOMAIN-NAME.com
Indítsa újra az Apache-ot:
# systemctl restart httpd
Az Apache által címzett kérések YOUR-DOMAIN-NAME.comkiszolgálása a következőn kívül történik: /srv/YOUR-DOMAIN-NAME.com. Azok az Apache-hoz intézett megjegyzéskérések, amelyek nem egyeznek egy adott ServerNamevagy ServerAliascsak az IP-címmel, vagy egy másik, az Ön IP-címére feloldó tartománynévvel, továbbra is az első virtuális gazdagépről lesznek kiszolgálva. Ennek ellenére továbbra is minden olyan általános DocumentRootelemet kell tekintenie , amely az alapértelmezett érték: /srv/http, valahogyan elérhetőnek.