Ubuntu Suomen keskustelualueet
Ubuntun käyttö => Ohjelmointi, palvelimet ja muu edistyneempi käyttö => Aiheen aloitti: teele - 09.05.14 - klo:21.33
-
Kokeilusivu on omassa hakemistossa, ja yritän saada siinä olevan php echon toimimaan.
Jos tiedoston pääte on html, selain näyttää sen muuten, mutta jättää php -osuuden pois.
Jos pääte on php, selain kieltäytyy avaamasta sitä ja ubuntu ehdottaa geditiä.
<html>
<meta charset="utf-8">
<body><h1>It works!</h1>
<p>This is the default web page for this server.</p>
<p>The web server software is running but no content has been added, yet.</p>
ööööööööööööööööööööö
<?PHP
echo "My first PHP script!";
?>
<?php
echo $_SERVER['HTTP_USER_AGENT'];
?>
</body></html>
Mikä neuvoksi?
teele
-
Onko php-tulkki asennettuna?
-
on, jos se menee tällä
sudo apt-get install php5 libapache2-mod-php5
-
Auttaisikohan:
sudo a2enmod php5
sudo service apache2 restart
-
Module php5 already enabled
ja käynnistelyä ja sammutusta olen jo ollut kokeilevinani useamman kerran
-
Tallentaisitko tämän:
<?php
phpinfo();
?>
vaikka nimelle "info.php" hakemiston alle mistä jaat Apachella.
Mitä näkyy jos yrität ajaa sen:
a) webbiselaimella
b) päätteessä (php info.php)
Laitoin läppäriini kokeeksi Apachen + PHP5, näyttäisi toimivan heti (kuva alla):
-
LAMP-ohjeessa on neuvo:
http://wiki.ubuntu-fi.org/LAMP_Asennus
Nyt public_html hakemiston sisältö näkyy apachessa osoitteessa http://localhost/~user
Otetaan PHP käyttöön käyttäjäkansioissa editoimalla /etc/apache2/mods-available/php5.conf tiedostoa:
sudo gedit /etc/apache2/mods-available/php5.conf
Tiedosto tulisi näyttää tältä:
<IfModule mod_php5.c>
<FilesMatch "\.ph(p3?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
# To re-enable php in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
#<IfModule mod_userdir.c>
# <Directory /home/*/public_html>
# php_admin_value engine Off
# </Directory>
#</IfModule>
</IfModule>
Lopuksi vielä kerran uudelleenkäynistetään apache2 palvelin.
sudo /etc/init.d/apache2 restart
Edit - Eli suomeksi. Oletuksena Ubuntu laittaa user-hakemistojen php-tuen pois päältä.
-
Muokkasin php5.confia, ja se on nyt tällainen
<IfModule mod_php5.c>
<FilesMatch "\.ph(p3?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
# To re-enable php in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
##<IfModule mod_userdir.c>
## <Directory /home/*/public_html>
## php_admin_value engine Off
## </Directory>
##</IfModule>
</IfModule>
Tein tiedoston index3.php ja kokeilin avata sitä selaimella, mutta selain kieltäytyy avaamasta sitä. Kaksoisnapsaus avaa sen geditissä.
Päätteessä komento
php index3.php
tulostaa pitkän listan kaikenlaista palvelintietoa, eli se näyttäisi toimivan.
teele
-
Avaathan selaimella?
http://127.0.0.1/~käyttäjätunnus/index3.php
Entä toimiiko, jos laitat päätteeksi php3:sen tai phtml:n?
-
http://127.0.0.1/~käyttäjätunnus/index3.php
näyttäisi avaavan sivun oikein
jossain vaiheessa sivun avaaminen muuttui niin, että en enää avannutkaan sivua palvelimen kautta vaan suoraan, ja se toimintatapa jäi sitten päälle, koska selain näytti avaavan sivun ihan oikein, jos sivulla ei ollut php-käskyjä.
täytyy vielä varmistaa, mitä tiedostonnimen loppupäätteet vaikuttavat....
kiitos neuvoista!
Muok.
php-käskyt toimivat php-, php3-, ja phtml-päätteisissä tiedostoissa. tavallinen html-päätteinen tiedostonimi jättää php-käskyt suorittamatta, mikä on ihan ohjeiden mukaista.
teele :D
-
Muistelin että sille pitää erikseen määrityksellä kertoa jos halutaan hyväksyä "index.php" kun oletus on "index.html", esimerkiksi tuolla hieman lisää siitä:
http://stackoverflow.com/questions/2384423/index-php-not-loading-by-default (http://stackoverflow.com/questions/2384423/index-php-not-loading-by-default)
-
Muistelin että sille pitää erikseen määrityksellä kertoa jos halutaan hyväksyä "index.php" kun oletus on "index.html", esimerkiksi tuolla hieman lisää siitä:
http://stackoverflow.com/questions/2384423/index-php-not-loading-by-default (http://stackoverflow.com/questions/2384423/index-php-not-loading-by-default)
Onpahan sellainen kutina että apassille saa kerrottua kelvolliseksi tiedostonimeksi vaikka index.foo
Ja kaikki nimet tyyliin *.foo
(Juuei, en aio edes kokeilla, joitain olen joskus estänyt edes näkymästä.)