Tämä lienee jokaiselle joskus sattunut, että Apache jostain syystä päästää php-koodit läpi käyttämättä niitä tulkilla. Mitäs siinä tilanteessa pitäisi tarkastella? Koitin Googlailla, mutta en keksinyt oikeita hakusanoja.
Php on asennettuna ja toimii. Samoin Apache2 on asennettuna ja toimii. Nuo myös toimivat yhdessä. Sitten on yksi kansio, jonka php:t myös toimii avattaessa skriptiä suoraan (kansio/index.php). Sitten kun laittaa osoitteeksi "kansio/", tulee php:t läpi.
Apache määrittää tiedoston mime-typeksi "application/x-httpd-php", mutta ei silti vie sitä php:n käsiteltäväksi vaan lähettää suoraan selaimelle. Mitään .htaccess-tiedostoja ei ole tässä eikä toimivissakaan hakemistoissa, joten default-asetuksilla mennään.
Edit: Jahas, ongelma sitten katosi. Ainoa asia mitä tein, oli DocumentRootin siirto /var/www:stä /var/www/lan-polkuun ja apassin restart. Ei tuo kyllä ongelman poistumista mielestäni selitä. Yhtä mystinen tuo bugi on aina. Satunnaisesti tuohon bugiin(?) on tullut törmättyä Apache-palvelimilla vieraillsessakin. Ei kannata mitään kovin arkaluonteista pistää siihen index.php:hen..
Tuleeko sinullakin .php tiedosto .phtml:nä?
Jos, niin itselläni auttoi apassin uudelleenkäynnistys.
Tosiaan se jäi tuossa aiemmassa postauksessa mainitsematta, että restarttailin Apachen puolenkymmentä kertaa ilman tulosta. Kävin välillä ihmettelemässä asetustiedostoja ja manuaaleja ja vaikka mitä. Sitten ongelma vain oli poissa kansiosiirron jälkeen. Sitä en muista, minkä niminen tiedosto selaimelle oli tyrkyllä.
Nyt palvelin on pystyssä ja toivottavasti toimiikin suunnitellusti. Pieni epäilys iski puseroon, että onko siinä sittenkin vielä yksi pieni virhe. Sitä pitää päästä testaamaan kotiverkon ulkopuolelta omassa hallinnassa olevalta koneelta. Tarkoitus oli laittaa lan- ja web-palvelin samaan porttiin. Pitääpä tutkailla..
Asetukset tiivistetysti seuraavat:
Lan-server:
<VirtualHost *:80> DocumentRoot /var/www/lan ServerName my-lan-server ServerAlias 192.168.1.2 <Directory /var/www/lan> AllowOverride None Order allow,deny allow from 192.168.1 </Directory> </VirtualHost>
Web-server:
<VirtualHost *:80> ServerName my.domain.com ServerAlias 1.2.3.4 DocumentRoot /var/www/web <Directory /var/www/web> AllowOverride None Order allow,deny allow from all </Directory> </VirtualHost>
Kun asetustiedostoihin menin katselemaan, ei hätää ole. Näköjään olin lan-serverin rajannut lanin IP-avaruuteen. Sitä siis mietin, mitä tapahtuu jos laittaa hosts-tiedostoon sisäverkon host-nimelle web-serverin IP:n. Ehkäpä testaan tuon vielä jossain vaiheessa.
Aihe on jo aika vanha, joten et voi enää vastata siihen.