Laboris õpime häälestama http serverit erinevates režiimides.
Uuri täpsemalt:
Apache HTTP Server Version 2.4 Documentation
HTTPD - Apache2 Web Server
Howto Create Name Based and IP Based Virtual hosts in Apache
Kui tekivad probleemid uuri /var/log/apache2 katalogi sisu
Installime apache kasutaja "root" õigustes
root# apt-get install apache2
Kui soovime lisada http serverile php funktsionaalsust siis installime juurde php
root# apt-get install php5
Veebi lehe kontrollimiseks käsureast saab installida text browseri käsuga:
root# apt-get install links lynx
kasutaja "root" õigustes
Vaikimisi leheküljed paigutatakse katalogi /var/www
Testiks tuleks luua fail index.html
root# cd /var/www
root# touch index.html
root# nano index.html
Ja lisame sinna mingisuguse rea teksti selle kasutaja ja masina eristamiseks:
Mina olen peeter masinal Teder
Salvestame sisu vajutades F2, Y ja Enter-it
Pöördudes localhost-i poole web browseriga saame kontrollida tulemust
Käivitame browseri ja trükime sinna
http://localhost
kasutaja "root" õigustes
kui eksisteerib index.html ta tuleks nimetada ümber
root# cd /var/www
root# mv index.html index2.html
PHP testiks tuleb luua fail index.php
root# touch index.php
root# nano index.php
Ja lisame sinna mingisuguse rea teksti selle kasutaja ja masina eristamiseks:
<?php echo "Mina olen kasutaja masinal Server"; ?>
Salvestame sisu vajutades F2, Y ja Enter-it
Kontrollime tulemust
http://localhost
Anname võimaluse tavakasutajatele näitada oma veebi.
Selleks tuleb teha olles "root" õigustes järgmist:
root# cd /etc/apache2/mods-enabled
Tekitame lingi võimalikest moodulitest lubatud moodulite katalogi:
root# sudo ln -s ../mods-available/userdir.conf userdir.conf
root# sudo ln -s ../mods-available/userdir.load userdir.load
Sama asja parem versioon 5 aastastele lastele:
root# sudo ln -s /etc/apache2/mods-available/userdir.conf /etc/apache2/mods-enabled/userdir.conf
root# sudo ln -s /etc/apache2/mods-available/userdir.load /etc/apache2/mods-enabled/userdir.load
Restardime http serveri:
root$ service apache2 restart
NB! Kui server ei restardi või tekib vea teade siis uuri apache serveri logisid error.log ja access.log katalogis /var/log/apache2
Olles "root" kasutaja õigustes loome kasutaja "peeter" (juhul kui seda kasutajat ei ole)
root# useradd -m -s /bin/bash peeter
Tuleks kontrollida et /home/kasutaja katalogi õigused oleks 755
root# chmod 755 /home/peeter
Logime sisse kasutajana "peeter"
root# su peeter
Lähme loodud kasutaja kodu kausta
peeter# cd /home/peeter
Loome spetsiaalse veebi kausta
peeter$ mkdir public_html
Määrame sellele kaustale juurdepääsu õigused
peeter$ chmod 755 public_html
kasutaja "peeter" õigustes
Loome sellesse katalogi test faili:
peeter$ cd $HOME/public_html
peeter$ touch index.html
peeter$ nano index.html
Ja lisame sinna mingisuguse rea teksti selle kasutaja ja masina eristamiseks:
Mina olen peeter masinal Teder
Salvestame sisu vajutades F2, Y ja Enter-it
Pöördudes localhost-i poole web browseriga saame kontrollida tulemust
Käivitame browseri ja trükime sinna
http://localhost/~peeter
Kui linuxel on määratud ka välisinterfeisi aadress ja firewalli reegel lubab pöördumist 80 porti saame pöörduda ka naaber arvutist selle lehe poole.
Linuxi IP aadressi saad kätte terminalist järgmise käsuga:
root# /sbin/ifconfig | grep inet
Näiteks:
http://172.21.7.202/~peeter
Kasutaja saab käivitada käsureast:
peeter$ links
http://localhost/~peeter
Iga kasutaja saab paigutada oma kodulehe serverisse ja näidata seda lehte veebis unikaalse hosti nime alt. Ühes serveris võib asuda sõltuvalt koormusest kõmneid või sadu veebilehekülgesid.
Vaata täpsemalt Apache virtual hosts leheküljelt
Näiteks loome uue kasutaja "peeter" kodukatalogiga /home/peeter kes soovib avaldada oma kodulehte aadressil www.peeter.tpt
Kasutaja "peeter" õigustes tema kodukatalogis loome katalogi "log" ja "www" kuhu paigutame index.html faili sisuga
Mina olen virtual host peeter masinal Teder
Näiteks:
Lähme kasutaja kodukatalogi
peeter$ cd $HOME
Kontrollime kus me asume
peeter$ pwd
Loome kaks katalogi
peeter$ mkdir www log
Vaatame üle kasutaja kodukatalogi sisu
peeter$ ls
Lähme www alamkatalogi
peeter$ cd www
Loome html faili
peeter$ touch index.html
Redigeerime paigutades ülal toodud sisu Mina olen virtual host peeter masinal Teder
peeter$ nano index.html
Loome võimaluse pöörduda selle faili poole domeeni ja hosti nime kaudu, nagu peeter.tpt või www.peeter.tpt
kasutaja "root" õigustes
Kontrollime süsteemi nimelahenduse reegleid linuxis:
# cat /etc/host.conf
oder hosts,bind
multi on
Kui näed jada hosts,bind see tähendab et nimelahendusel alguses kontrollitakse hosts failis nimelahendust ja see järel pöördutakse DNS nimelahenduse poole.
Enne oma kodulehe kasutamist domeeni nimega tuleb lehekülg testida läbi lokaalselt oma serveris.
Valime domeeni nime peeter.tpt ja hosti nimeks www.peeter.tpt ja mõlemad lahendame 127.0.0.1 aadressiks.
Selleks lisame uue kirje /etc/hosts faili.
NB! ärge kustutage localhost kirjet selles failis!!!
127.0.0.1 www.peeter.tpt peeter.tpt
root# nano /etc/hosts
Kontrollime nimelahendust ping käsugaSelleks et kasutaja saaks pöörduda oma lehekülje poole eelnevalt mainitud konfiguratsiooniga interneti nimega kasutades nimelahendust tuleks konfigureerida apache ümber. Alljärgnevat NUHUTATUD TEXT tuleb teha kui õpetaja nõuab.
Alljärgnevaid operatsioone saab sooritada "root" kasutaja või sudo kasutaja vastavate õigustega.
lisame-muudame faili /etc/apache2/apache2.conf reaNameVirtualHost ip.address:port
Näiteks:
NameVirtualHost 172.21.7.86:80
Jätkame.
Loome faili /etc/apache2/sites-available/peeter.tpt kus me kirjeldame uue virtual hosti serveri nime, aliase, adminni emaili, juurkatalogi ja logifailide asukoha.
*.80 ütleb et see virtual host võtab päringuid vastu kõikidele serveri IP aadressitele pordile 80.
root# touch /etc/apache2/sites-available/peeter.tpt
root# nano /etc/apache2/sites-available/peeter.tpt
Lisame sinna järgmise konfiguratsiooni
<VirtualHost *:80>
ServerName peeter.tpt
ServerAlias www.peeter.tpt
ServerAdmin peeter@peeter.tpt
DocumentRoot /home/peeter/www
ErrorLog /home/peeter/log/error.log
TransferLog /home/peeter/log/access.log
</VirtualHost>
Salvestame vajutades F2, Y ja Enter-it
Loome lingi /etc/apache2/sites-enabled katalogi
$ sudo ln -s /etc/apache2/sites-available/peeter.tpt /etc/apache2/sites-enabled/peeter.tpt
Restardime apache serveri
$ service apache2 restart
Kontrollime toimet käivitades käsureast samas masinas:
# links http://www.peeter.tpt
ja
# links http://peeter.tpt
NB! Enne alustamist kontrolli/tee korda oma interneti ühendus/interfeis
Probleemide tekkimisel uuri systeemi ja vastava deemoni logisid
Paigutada kasutaja kodulehekülg virtual hostingusse nägu eelnevas näites.