PHP:n käyttöönotto Apachessa
Asensin aluksi (9.9. klo 22.45 GMT+3) Apache2:n, PHP5-moduulin, MYSQL-palvelindemonin sekä MYSQL-asiakasohjelman. Tämän jälkeen otin userdir-moduulin käyttöön (jotta ~/public_html alkaisi toimia). Otin myös PHP5-moduulin käyttöön.sudo apt-get install apache2 libapache2-mod-php5 mysql-server mysql-client && sudo a2enmod userdir && sudo a2enmod php5 && sudo service apache2 restart && mkdir ~/public_html/Asetin PHP:n toimimaan myös käyttäjien kotihakemistoissa muokkaamalla Apachen konffia.
sudoedit /etc/apache2/mods-available/php5.confMuutin tiedostosta seuraavat rivit kommentoiduiksi:
# <IfModule mod_userdir.c>
# <Directory /home/*/public_html>
# php_admin_value engine Off
# </Directory>
# </IfModule>
Käynnistin Apache-demonin uudelleen ja kokeilin, tulkkaako Apache2 kotihakemistoissa olevia *.php-tiedostoja. Tein tämän lynxillä.
sudo service apache2 restart && echo '<? echo ("PHP toimii kotihakemistossa"); ?>' > /home/ubuntu/public_html/index.php && sudo apt-get install lynx && lynx http://localhost/~ubuntuLynx palautti terminaaliemulaattoriin tekstin "PHP toimii kotihakemistossa.", mikä osoittaa, että PHP-koodi ajettiin onnistuneesti.
MySQL:in käyttöönotto
Yritin kirjautua MySQL-demonin komentotilaan, mutta törmäsin ongelmaan:ubuntu@ubuntu:~$ mysql -uroot -pHetken guuglattuani syyksi selvisi kovalevytilan puute. Koska järjestelmäni pyörii muistitikulla, tämä oli sen verran suuri ongelma, että päätin jättää leikin kesken klo 23.24 ja tehdä lopun tehtävästä (PHP-ohjelmoinnin) virtuaalipalvelimellani.
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
MySQL-kokeiluja virtuaalipalvelimella
Otin yhteyden Hollannissa sijaitsevaan virtuaalipalvelimeeni.ssh blaa@turkanen.tilaa.nlKirjauduin mysqlin komentokäyttöliittymään.
mysql -uroot -pLoin uuden käyttäjän ja uuden tietokannan.
create database myslitesti;
grant all privileges on myslitesti.* to 'myslitesti'@'localhost' identified by 'blaa';Kirjauduin root-käyttäjältä ulos.
exitOtin tietokannan "myslitesti" käyttöön käyttäjällä "myslitesti".
mysql -umyslitesti -p myslitestiLoin uuden taulun.
create table myslitesti;Loin taulukolle rakenteen.
create table terkut (terkut TEXT, viimeisimmat TEXT);Alustin tiedot.
insert into terkut (kahva, terkut) values ('viimeisin', 'blaa');Poistuin komennolla "exit" ja aloin kirjoittaa MySQL-tietokantaa käyttävää PHP-tiedostoa. Tavoitteena oli tehdä kikkare, joka kävijälle edellisen kävijän jättämät terveiset. Sähläsin MySQL-hakujen kanssa 10.9. klo 00.55 asti ja päätin jatkaa aamulla. Jatkoin nysväämistä 10.9. klo 06.30 ja luovutin klo 7.23, kun MySQL-haut eivät ottaneet onnistuakseen. Viimeisin yritykseni näytti tältä ja lähdekoodi seuraavanlaiselta:
<?
$yhteys = mysql_connect("localhost", "myslitesti", "blaa") or die ("Error: mysql_connect");
mysql_select_db("myslitesti", $yhteys) or die ("Error: mysql_select_db");
// Haetaan vanhat terkut kannasta
$vanhat_terkut = "SELECT * FROM terkut WHERE kahva = 'terkut'";
$vanhat_terkut = mysql_query($vanhat_terkut);
mysql_close ($yhteys);
?>
<!doctype html>
<head>
<title>Terkut</title>
<meta charset="utf-8" />
</head>
<body>
<form action="terkut.php" method="GET">
<table>
<tr><td><? echo $vanhat_terkut; ?></td></tr>
<tr><td><input type="text" name="uudet_terkut" /><input type="submit"
value="Lähetä" /></td></tr>
</table>
</body>
Ei kommentteja:
Lähetä kommentti