Tehtävänanto - Asenna ja testaa LAMP - Aiheuta vähintään 3 virhettä ja analysoi lokista - Tee nimipohjainen virtuaalipalvelin, joissa toimii myös www. (Karvinen, T. 23.09.2013) Työympäristö Tein tehtävän koulun labrakoneella. Tietokone: HP Compaq 8200 Elite CMT PC (XL508AV) Tunnus: 1K015 PC 6 Käytin tehtävän tekemiseen Xubuntu 13.04 -käyttöjärjestelmää aikaisemmin tekemältäni LiveUSB-tikulta. Ensimmäisenä annoin komennot setxkbmap fi sekä sudo apt-get update ja asensin libreofficen komennolla sudo apt-get install libreoffice sekä asensin sshfs:n komennolla sudo apt-get install sshfs. Käytin raportin kirjoittamiseen libreofficea. Tallensin sshfs:n avulla tämän raportin suoraan myy.haaga-helia.fi -palvelimelle. Tein hakemiston myy johon mounttasin sshfs:llä myy-palvelimen komennolla sshfs [käyttäjätunnus]@myy.haaga-helia.fi: myy.
LAMP - Asenna ja testaa LAMP LAMP tarkoittaa Linux, Apache, MySQL ja PHP (Perl, Python). Apache Asensin apachen komennolla sudo apt-get install apache2. Firefox localhost toi näkyviin seuraavan sivun: Apache2 siis asentui oikein. Tämän jälkeen laiton käyttäjien public_html -hakemistot päälle komennolla sudo a2enmod userdir ja käynnistin apachen uudelleen komennolla sudo service apache2 restart. Tämän jälkeen tein kotihakemistoon hakemiston public_html ja testasin sen toimintaa firefoxilla. Userdir siis toimi niin kuin pitikin. MySQL Asensin MySQL:n komennolla sudo apt-get install mysql-client mysql-server. Asennuksessa ilmestyi seuraava ikkuna: Tässä annoin MySQL:n root käyttäjän salasanan. Huom. Kyseisellä käyttäjällä ei ole mitään tekemistä järjestelmän root käyttäjän kanssa.
PHP Asensin PHP:n komennolla sudo apt-get install libapache2-mod-php5. Asennuksen jälkeen tein info.php-sivun /var/www/ -hakemistoon komennolla sudoedit /var/www/info.php. Lisäsin tiedostoon seuraavat rivit: Tämän jälkeen testasin PHP:n toimintaa firefoxilla. PHP siis toimi niin kuin pitikin. Tämän jälkeen piti saada PHP toimimaan käyttäjillä. Muokkasin apachen php5.conf-tiedostoa komennolla sudoedit /etc/apache2/mods-enabled/php5.conf. Tein seuraavat muutokset: Tiedostossa oli selvästi kommentoitu, että PHP on oletuksena pois käytöstä käyttäjien hakemistoissa ja sen sai käyttöön kommentoimalla Ifmodule-rivit. Tämän jälkeen testatakseni PHP:n toimintaa tein public_html-hakemistoon index.php-tiedoston johon kirjoitin seuraavat rivit: (PHP. 27.09.2013)
Tämän jälkeen testasin toimintaa firefoxilla: PHP toimi siis niin kuin pitikin käyttäjien public_html-hakemistoissa. Nyt kun PHP oli asennettu, halusin vielä testata MySQL:n toimintaa. Asensin phpmyadmin-ohjelman komennolla sudo apt-get install phpmyadmin. Asentaessa ilmestyi seuraavanlainen ikkuna: Tässä kohdassa oli tärkeää laittaa * apache2 kohdalle tai muuten phpmyadmin ei olisi toiminut. Tämän jälkeen asennus pyysi MySQL rootin salasanaa ja sen jälkeen itselleen salasanaa, joka kuitenkin kannatti jättää tyhjäksi, jotta se arpoisi itselleen salasanan. Asennuksen jälkeen kokeilin phpmyadminin toimintaa firefoxilla: Kirjautuessani sisään MySQL:n root tunnuksella pystyin muokkaamaan tietokantoja, joten MySQL toimi oikein. LAMP oli nyt asennettu.
Virheet - Aiheuta vähintään 3 virhettä ja analysoi lokista /var/log/apache2/error.log [Tue Oct 01 12:33:48 2013] [error] [client 127.0.0.1] File does not exist: /var/www/~xubuntu Tässä kohtaa yritin firefoxilla mennä osoitteeseen localhost/~xubuntu, mutta userdir-moduulia en vielä ollut laittanut päälle. Apache ei siis osannut etsiä public_html-hakemistosta käyttäjän xubuntu kotisivua vaan se yritti etsiä sitä /var/www/-hakemistosta /var/log/apache2/error.log [Tue Oct 01 11:55:49 2013] [error] [client 127.0.0.1] File does not exist: /home/xubuntu/public_html Tässä kohtaa userdir oli laitettu päälle, mutta käyttäjällä xubuntu ei ollut omassa kotihakemistossaan public_html-hakemistoa, joten apache ei löytänyt sitä. /var/log/apache2/error.log [Tue Oct 01 12:00:28 2013] [crit] [client 127.0.0.1] (13)Permission denied: /home/xubuntu/public_html/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable Tässä kohtaa poistin xubuntun public_html-hakemistosta kaikilta muilta (o) suoritusoikeuden (x) komennolla chmod o-x /home/xubuntu/public_html ja sitten yritin firefoxilla avata xubuntun kotisivun, jolloin ilmestyi 403 forbidden koodi. Tässä tein index.php-tiedoston käyttäjän xubuntu kotihakemistoon ja kirjoitin tiedostoon php-koodia. En kuitenkaan vielä ollut laittanut php:tä päälle käyttäjien kotihakemistoissa (php.conf), joten kun avasin sivun, apache ei osannut käsitellä php-koodia oikein ja ilmestyi tälläinen sivu.
Nimipohjainen palvelin - Tee nimipohjainen virtuaalipalvelin, joissa toimii myös www. Tein hakemistoon /etc/apache2/sites-available/ seuraavanlaisen tiedoston: Tämän jälkeen otin tiedoston käyttöön komennolla sudo a2ensite superflyingninjamonkey.com ja käynnistin apachen uudelleen komennolla sudo service apache2 restart. Nyt apache osasi avata oikeasta hakemistota sivun kun joku yrittää mennä sivulle superflyingninjamonkey.com tai www.superflyingninjamonkey.com. Tämän jälkeen halusin testata tämän toimintaa. En omista kyseistä domainia joten minun piti muokata hosts-tiedostoa, jotta pystyisin menemään sivulle käyttäen pelkkää nimeä. Tarkistin ip-osoitteeni ip addr-komennolla muokkasin /etc/hosts-tiedostoa seuraavanlaisesti: Nyt kun avasin firefoxilla osoitteen www.superflyingninjamonkey.com, avautui seuraavanlainen sivu. Eli avautui xubuntun public_html-hakemistossa oleva index.php-sivu. Nyt palvelimeni oli nimipohjainen.
Lähteet Karvinen, T. 04.06.2006. Raportin kirjoittaminen. Luettavissa: http://terokarvinen.com/raportin_kirjoittaminen.html. Luettu:. Karvinen, T. 16.09.2013. Aikataulu Linux palvelimena ict4tn003-9 ja -10 syksyllä 2013. Luettavissa: http://terokarvinen.com/2013/aikataulu-%e2%80%93-linux-palvelimena-ict4tn003-9-ja-10-syksy lla-2013#comment-20013. Luettu:. PHP. 27.09.2013 Your first PHP-enabled page. Luettavissa: http://php.net/manual/en/tutorial.firstpage.php. Luettu:. Tietoja Tätä dokumenttia saa kopioida ja muokata GNU General Public License (versio 2 tai uudempi) mukaisesti. http://www.gnu.org/licenses/gpl.html Pohjana Tero Karvisen Linux-kurssi, www.iki.fi/karvinen