PDA

Bekijk Volledige Versie : Win2k3 .php = 404 Not Found



BlueLagoon
19/09/05, 18:31
Ik heb een raar probleempje met het aanmaken van websites op mijn nieuwe Win2k3 IIS6 server.

Ik heb inmiddels al mijn eigen website correct draaiend... en nu voeg ik een nieuwe website toe met exact dezelfde eigenschappen en nu krijg ik elke keer "404 file not found" errors als ik op deze nieuwe sites een PHP file probeer te openen. Voor de duidelijkheid: PHP op die eerste website werkt perfect. Gewone html bestanden toont hij wel.

Iemand enig idee wat ik fout zou kunnen doen?

Bedankt!

Glenn
19/09/05, 19:17
Staat php ingeschakeld in IIS? Wanneer je een .php oproept terwijl de PHP parser niet goed staat ingesteld krijg je een 404 (ik wel tenminste).

BlueLagoon
19/09/05, 19:28
Ja dat zou je inderdaad zeggen, alleen doet PHP het gewoon netjes op een andere website op de server.

Glenn
19/09/05, 20:03
Origineel geplaatst door BlueLagoon
Ja dat zou je inderdaad zeggen, alleen doet PHP het gewoon netjes op een andere website op de server. Heb je de site de rechten "Run scripts" gegeven?

BlueLagoon
19/09/05, 20:07
Zowel geprobeerd op "Scripts Only" en "Scripts en Executables" (wat niet eens nodig zou moeten zijn, maar ok).

Zitten ook in dezelfde application pool...

Glenn
19/09/05, 20:29
Dan kan ik je helaas niet verder helpen. Misschien MediaServe en/of Digiover (Vevida). Die doen ook veel met IIS.

BlueLagoon
19/09/05, 21:07
Hmmzzz mijn eigen site lijkt nu "opeens" ook niet meer te beschikken over CSS, plaatjes etc. Net alsof de subdirs niet gelezen (kunnen) worden... misschien iets te veel geƫxperimenteerd :). Morgen maar weer verder zoeken ;).

Digiover
19/09/05, 21:14
Origineel geplaatst door BlueLagoon
Ik heb inmiddels al mijn eigen website correct draaiend... en nu voeg ik een nieuwe website toe met exact dezelfde eigenschappen en nu krijg ik elke keer "404 file not found" errors als ik op deze nieuwe sites een PHP file probeer te openen. Voor de duidelijkheid: PHP op die eerste website werkt perfect. Gewone html bestanden toont hij wel.

Hoe heb je deze nieuwe website aangemaakt? Staat inheritance aan in IIS (m.a.w. erven virtual webservers de gegevens van de IIS Master Properties)?

BlueLagoon
19/09/05, 21:41
Yup, ik heb de default site verwijderd, vervolgens de "master properties" of de "web sites node" correct ingesteld. Nieuwe websites erven hun eigenschappen hiervan.

Vervolgens een eigen website aangemaakt (hid.nl) welke perfect draait, daarna Awstats, wat ook goed werkte, en nu een tweede site aan het proberen en die weigert opeens compleet om PHP te verwijderen.

Edit: Fout met HID.nl site had te maken met gewijzigde rechten... fout met php op een nieuwe site blijft echter nog staan. Ben ook gaan kijken naar de beschikbare MIME types, dit lijkt verder ook gewoon in orde.

Vreemde zaken :)

MediaServe
19/09/05, 22:09
Heeft de gebruiker waar de IIS Website op draait, toegang tot het ISAPI filter op de harde schijf? Ik ga er vanuit dat je ISAPI gebruikt :)

Dus als je gebruik maakt van het IUSR_COMPUTER account, dan moet die account ook rechten hebben om php5isapi.dll (in geval van PHP5) te openen.

Loop eventueel php.ini ook nog eens na!

BlueLagoon
20/09/05, 09:34
Dat betekent dat je je "anonymous" internet gebruiker rechten geeft op je PHP directory? Moet dit dan niet het "network" account van de application pool zijn?

Overigens heb ik het wel geprobeerd, maar dit haalde niets uit. En immers... de eerste website werkt wel, dus dan moeten die rechten op PHP toch wel goed staan?

En wat voor error kan je krijgen als je PHP niet goed bereikbaar is voor IIS... ook een 404 of eerder een "Kan niet uitvoeren" o.i.d. error message?

We zoeken verder :)

BlueLagoon
20/09/05, 09:40
Probleem gevonden!! Maar misschien dat iemand nog een kleine uitleg kan geven om het iets te verhelderen...

In IIS onder de "Web Service Extensions" staat PHP. Als je hier met de rechtermuisknop op klikt en properties kiest uit het snel menu verschijnt er een nieuw scherm. Kies hier het tabblad "Required Files" en er staat netjes dat hij "php5isapi.dll" gebruikt.

Nu keek ik echter nog maar eens goed in de properties van de website (TAB homedirectory en vervolgens de knop "Configuration". Toen zag ik tot mijn lichtelijke verbazing dat daar in de lijst bij de .php extentie WEL de CGI versie werd gebruikt. Veranderd in de isapi en het werkt weer correct...

Maar ik heb altijd de ISAPI methode gebruikt dus hoe kan daar nu CGI komen te staan...

In ieder geval werkt het weer, en wil ik iedereen die geprobeerd heeft te helpen bij deze bedanken!

MediaServe
20/09/05, 10:07
Tip voor toekomstige gebruikers: PHP niet automatisch installeren, maar altijd handmatig de ISAPI versie installeren :)