Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Php:t vuotaa läpi

LaNu [01.02.2010 20:41:07]

#

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..

ankzilla [02.02.2010 21:12:32]

#

Tuleeko sinullakin .php tiedosto .phtml:nä?
Jos, niin itselläni auttoi apassin uudelleenkäynnistys.

LaNu [03.02.2010 01:30:29]

#

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.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta