Tässä tehtävässä olen onnistuneesti
– asentanut Apachen ja luonut käyttäjälle PHP-tuelliset kotisivut
– yksinkertaisen PHP-ohjelman, joka laskee käyttäjän syöttämien lukujen summan
HARJOITUSYMPÄRISTÖ
Harjoitus suoritettiin 02.02.2013 klo 12:03 kannettavalla tietokoneella HP Pavilion g6-2220so.
HP Pavilion g6-2220so tiedot:
Käyttöjärjestelmä: Xubuntu 12.04 Precise Pangolin 64-bit (liveromppu)
Suoritin: Intel Core i5 3210M @ 2.50GHz
Muisti: 6,00 Gt Dual-Channel DDR3 @ 798MHz
Kiintolevy: 932GB Seagate ST1000LM024 HN-M101MBB (SATA)
Näyttöominaisuudet: Intel HD Graphics 4000
Ääniominaisuudet: IDT High Definition Audio CODEC
APACHEN ASENNUS JA TESTAAMINEN
Aloitin vaihtamalla näppäimistön suomalaiseksi komennolla setxkbmap fi. Sitten päivitin pakettitietokannan komennolla sudo apt-get update. Sen jälkeen lähdin asentamaan Apachea. Se löytyy paketinhallinnasta nimellä apache2, eli asennuskomento on sudo apt-get install apache2.
Asennuksen jälkeen kokeilin Apachen toimivuutta surffaamalla nettiselaimella oman tietokoneeni serverille (localhost). Kirjoitin kehotteeseen firefox localhost, jolloin localhost aukesi Firefox-selaimessa.
Kaikki toimi juuri niin kuin pitääkin, koska localhostissa näkyi ilmoitus “It works!”
Suljin selaimen komentokehotteen kautta komennolla ctrl + c. Sitten lähdin tutkimaan mikä on koneeni IP-osoite. Se selviää komennolla ifconfig. Käytössäni on langaton WLAN-nettiyhteys. IP-osoitteeni löytyi siis kohdasta “wlan0” ja sieltä toiselta riviltä “inet addr”, ensimmäisenä näkyvä IP.
Ja nyt kun selvitin IP-osoitteeni, kokeilin surffata sillä serverille: firefox 192.168.1.51. Sain saman “It works!”-ilmoituksen kuin aiemminkin, ja siitä tiesin, että Apache on nyt toimivasti asennettu.
KÄYTTÄJÄKOHTAISTEN KOTISIVUJEN LUOMINEN
Lähdin luomaan kotisivua Apache-palvelimelle ensin hyväksymällä userdir-moduulin komennolla sudo a2enmod userdir. Jotta äskeinen komento tulisi voimaan, käynnistin Apachen uudelleen komennolla sudo service apache2 restart. Molemmissa komennoissa on tärkeä muistaa käyttää sudo-oikeuksia, muutoin ne eivät toimi.
Loin kotikansioon /home/xubuntu/ (kotikansioon pääsee kätevästi komennolla cd) uuden kansion nimeltä public_html komennolla mkdir public_html. Kaikki tiedostot public_html-kansiossa julkaistaan palvelimella. Tein äsken luotuun kansioon tekstitiedoston nimeltä index.html (komennolla nano index.html), johon kirjoitin satunnaista lorem ipsum-testitekstiä. Index.html on kotisivujen aloitussivu, ja se etsitään automaattisesti kun osoitteeksi kirjoitetaan kotisivujen perusosoite. Eli nyt kun seuraavaksi menen kokeilemaan osoitetta localhost/~xubuntu, selain avaakin minulle sivun automaattisesti sivun localhost/~xubuntu/index.html.
Ja kuten äsken jo totesinkin, seuraavaksi työkseni kokeilin toimiiko public_html-kansion sisältö palvelimella. Avasin Firefoxin komentokehotteen kautta ja surffasin osoitteeseen localhost/~xubuntu. So far, so good. Sivu toimi kuten pitääkin, eli kaikki lorem ipsum-tekstini näkyi ruudulla.
PHP:N ASENNUS JA TESTAAMINEN
Asensin PHP:n komennolla sudo apt-get install php5 libapache2-mod-php5. Seuraavaksi täytyy hyväksyä php muokkaamalla tiedostoa php5.conf. Se onnistuu suoraan komennolla sudoedit /etc/apache2/mods-enabled/php5.conf.
Kuten tiedostossa sanotaan “To re-enable php in user directories comment the following lines (from <IfModule …> to </IfModule>.)”, kommentoin IfModule-rivit ulos lisäämällä niiden eteen risuaitamerkin #. Kirjoitin lisäksi huomion, että minä olen muokannut tiedostoa. Nyt php5.conf-tiedosto näyttää tältä:
Käynnistin Apachen uudelleen, jotta muutokset tulevat voimaan: sudo service apache2 restart. Seuraavaksi muutin public_html-kansiossa olevan index.html-tiedoston on .php-päätteiseksi. Se onnistui komennolla mv index.html index.php. Nyt kun tulevaisuudessa haluan muokata index-tiedostoa, se täytyy tehdä komennolla nano index.php, koska .html-päätteistä tiedostoa ei enää ole.
Kirjoitin index.php-tiedostoon yksinkertaisen html- ja php-koodin sekoituksen:
<!doctype html>
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />
<title>Testisivusto</title>
</head>
<body>
<h1>Tervetuloa</h1>
<?php print “Hello World!” ?>
<p>Ja näkemiin.</p>
</body>
</html>
Lopuksi kokeilin toimivuutta surffaamalla selaimella osoitteeseen localhost/~xubuntu. PHP toimi moiteetta, sillä eteeni tulostui seuraavannäköinen sivu:
YKSINKERTAINEN PHP-OHJELMA
Seuraavaksi tein PHP:llä ohjelman, joka kysyy käyttäjältä kaksi numeroa ja laskee näiden numeroiden summan.
Muokkasin aluksi index.php-tiedostoa sellaiseksi, että se kysyy käyttäjältä numerot:
<!doctype html>
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />
<title>1 + 1 = ?</title>
</head>
<body>
<p>Syötä kaksi kokonaislukua ja paina “submit”. Laskin laskee lukujen summan.</p>
<form action=”summa.php” method=”post”>
<p>Ensimmäinen numero: <input type=”text” name=”yksi” /></p>
<p>Toinen numero: <input type=”text” name=”kaksi” /></p>
<p><input type=”submit” /></p></form>
</body>
</html>
Sitten loin public_html-kansioon toisen tiedoston nimeltä summa.php komennolla nano summa.php – tämä tiedosto tulee sisältämään itse laskutoimituksen. Kirjoitin tiedostoon seuraavan pätkän koodia:
Valitsit luvut <?php echo(int)$_POST[‘yksi’]; ?>
ja
<?php echo(int)$_POST[‘kaksi’]; ?>
<br>
Lukujen summa on <?php echo (int)$_POST[‘yksi’]+(int)$_POST[‘kaksi’]; ?>
Menin kokeilemaan php:n toimivuutta osoitteeseen localhost/~xubuntu ja kokeilin samaa myös IP-osoitteen kanssa. Molemmilla kerroilla lopputulos oli sama ja toimiva, sain sivun tekemään juuri sen mitä halusinkin:
Tätä dokumenttia saa kopioida ja muokata GNU General Public Licensen (versio 2 tai uudempi) mukaisesti, http://www.gnu.org/licenses/gpl.html
Pohjana Tero Karvisen Työasemat ja tietoverkot-kurssi, http://terokarvinen.com
Lähteet:
Filed under: Linux | Tagged: apache, LAMP, linux, php | Leave a comment »