[Apache+PHP op WinXP] PHP scripts blijven reloaden na instal

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • js303
  • Registratie: April 2003
  • Laatst online: 01-06 10:17
Ik heb een heel vaag probleem op een pc dat ik nog niet eerder ben tegengekomen in de jaren dat ik WAMP servertjes installeer.

Na installatie van Apache + PHP op WinXP gaat Apache - zodra ik een testscript wil draaien met de strekking <?php phpinfo(); ?> - als een idioot de pagina herladen (zeg 20x per seconde) totdat er een Page not found komt. Vreemd is dat niet elke PHP pagina in deze infinite loop terechtkomt. Ook phpAdmin gaat hier en daar goed, maar bijv. de lijst met alle tabellen van een DB genereert ook de infinite loop.

Ik heb al diverse versies van Apache geprobeert: 2.0.61, 2.0.63, 2.2.8. En PHP ook: PHP 4.4.7, 4.4.8, 5.2.6. Allemaal zelfde laken en pak. Ik heb de PHP.ini file aangepast op geheugengebruik (van 2mb naar 50mb), Apache DocumentRoot aangepast. Geen verschillen.
Ik dacht even dat het aan de output buffer grootte lag, dus heb hele lange HTML pagina's gegenereert met PHP, maar dat maakte ook niet uit.

Kan niks op php.net of fora vinden. Help!

[ Voor 10% gewijzigd door js303 op 17-05-2008 18:33 ]


Acties:
  • 0 Henk 'm!

  • js303
  • Registratie: April 2003
  • Laatst online: 01-06 10:17
Update: Internet Explorer reageert anders dan Firefox. als ik met Firefox bijv. phpAdmin bekijken, houdt de pagina halverwege op oftewel Apache/PHP renderen maar een deel vd HTML. Internet Explorer gaat in plaats daarvan als een gek refreshen...

Acties:
  • 0 Henk 'm!

  • AtleX
  • Registratie: Maart 2003
  • Niet online

AtleX

Tyrannosaurus Lex 🦖

Kijk eens met een sniffer als Fiddler welke headers er verstuurd worden?

Sole survivor of the Chicxulub asteroid impact.


Acties:
  • 0 Henk 'm!

  • js303
  • Registratie: April 2003
  • Laatst online: 01-06 10:17
Ik heb geen .net framework draaien ivm een oude WinXP (pre SP2) dus kan dit niet proberen. Maar als ik naar de Apache logs kijk, zie ik een stuk of 50x dit onder elkaar staan:

code:
1
127.0.0.1 - - [17/May/2008:20:33:40 +0200] "GET /info.php HTTP/1.1" 200 46560


Om het nog vreemder te maken:

als ik <?php phpinfo(8); ?> in een script draai gaat het prima: IE/FF tonen dan de geladen modules. als ik dit echter 2x achter elkaar zet, dus <?php phpinfo(8); phpinfo(8); ?> of een andere combinatie van info's, dan gaat apache/php weer infinate loopen.

[ Voor 37% gewijzigd door js303 op 17-05-2008 20:41 ]


Acties:
  • 0 Henk 'm!

  • GlowMouse
  • Registratie: November 2002
  • Niet online
Je ziet dat de statuscode 200 is, dat betekent dat de pagina gewoon naar de browser verstuurd wordt. Open met notepad eens de pagina (file, open, en dan gewoon de url invoeren), je ziet dan de inhoud.

Acties:
  • 0 Henk 'm!

  • kokx
  • Registratie: Augustus 2006
  • Laatst online: 13-09 20:30

kokx

WIN

Heb je je httpd.conf eens goed doorgespit? Hierin zou je per ongeluk een keer een refresh header geset kunnen hebben voor sommige requests.

Acties:
  • 0 Henk 'm!

  • js303
  • Registratie: April 2003
  • Laatst online: 01-06 10:17
GlowMouse schreef op zaterdag 17 mei 2008 @ 20:37:
Je ziet dat de statuscode 200 is, dat betekent dat de pagina gewoon naar de browser verstuurd wordt. Open met notepad eens de pagina (file, open, en dan gewoon de url invoeren), je ziet dan de inhoud.
Met IE de page source openen heeft weinig zin aangezien die in een endless loop verzeild raakt, maar Firefox genereert slechts een stuk van de pagina. Als ik de HTML bron bekijk zie ik ook maar een gedeelte van de HTML codes die houden halverwege op.

Acties:
  • 0 Henk 'm!

  • js303
  • Registratie: April 2003
  • Laatst online: 01-06 10:17
kokx schreef op zaterdag 17 mei 2008 @ 20:39:
Heb je je httpd.conf eens goed doorgespit? Hierin zou je per ongeluk een keer een refresh header geset kunnen hebben voor sommige requests.
Ik heb bij elke Apache versie die ik heb geprobeerd (3 in totaal) altijd de standaard httpd.conf gepakt en daar alleen de PHP module aanroep toegevoegd (verschilt per versie van Apache). Dit zit er bij Apache 2.2.8 zo uit:

code:
1
2
3
4
#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
PHPIniDir "F:/Program Files/PHP/"
LoadModule php5_module "F:/Program Files/PHP/php5apache2_2.dll"
#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL


Bij eerdere installaties op andere machines deed ik dat ook zo en had nooit dit soort problemen. Daarnaast lijkt het me gek als de standaard meegeleverde httpd.conf file voor dit soort ongein zorgt.

Het enige dat ik mij kan bedenken dat een MAJOR verschil is met andere installaties die ik heb gedaan is dat het nu op de F schijf draait allemaal, en niet op de C schijf. Maar ik heb alle paden al gecheckt hierop. En met de laatste PHP en Apache installers wordt dit automatisch geconfigureerd.

Andere verschillen: het is een AMD pc, met Windows XP Pro 1.

[ Voor 16% gewijzigd door js303 op 17-05-2008 20:58 ]


Acties:
  • 0 Henk 'm!

  • GlowMouse
  • Registratie: November 2002
  • Niet online
js303 schreef op zaterdag 17 mei 2008 @ 20:51:
[...]
Met IE de page source openen heeft weinig zin aangezien die in een endless loop verzeild raakt, maar Firefox genereert slechts een stuk van de pagina. Als ik de HTML bron bekijk zie ik ook maar een gedeelte van de HTML codes die houden halverwege op.
Ik heb het niet over IE en dan de page source openen. Ik heb het over in Kladblok via File, Open de url openen.
kokx schreef op zaterdag 17 mei 2008 @ 20:39:
Heb je je httpd.conf eens goed doorgespit? Hierin zou je per ongeluk een keer een refresh header geset kunnen hebben voor sommige requests.
Dan zou de statuscode 301 of 302 zijn geweest.

Acties:
  • 0 Henk 'm!

  • js303
  • Registratie: April 2003
  • Laatst online: 01-06 10:17
GlowMouse schreef op zaterdag 17 mei 2008 @ 21:02:
[...]

Ik heb het niet over IE en dan de page source openen. Ik heb het over in Kladblok via File, Open de url openen.
He dat kan toch helemaal niet. een URL openen in kladblok?

Acties:
  • 0 Henk 'm!

  • js303
  • Registratie: April 2003
  • Laatst online: 01-06 10:17
GEVONDEN!
Het bleek dus niet te liggen aan Apache of PHP (hetgeen al beetje aannemelijk werd na de verschillende versies die ik had geinstalleerd) maar aan een heel irritant klein bestandje: afd.sys

Een oude versie van dit drivertje zorgt er blijkbaar voor dat Apache / PHP hun werk niet goed kunnen doen en mangled output genereert, waar IE op zijn beurt op reageert door een page reload te doen.

Zie de volgende bronnen:
http://bugs.php.net/bug.php?id=14865
http://www.phpcodinghelp....hp?article=installing-php
http://debuggable.com/pos...cc-47c1-b544-4a1ecbdd56cb
http://www.mail-archive.c...sts.php.net/msg35331.html

ik citeer:
I have the same error: Apache/2.0.44 (Win32) PHP/4.3.1 Server on WinXP
non-SP1.

I've noticed, with Opera, that a) the datastream returned by Apache
through afd.sys is corrupted, and b) the datastream stops transmitting
at about 32/33KB. This also seems to be the case in IE6 - I have not
tested with Netscape. IE6 seems to like to refresh whenever it gets a
corrupted datastream.

I've managed to obtain the afd.sys file that is SP1 version; but I
can't install it for some reason - if I just do Search "afd.sys" and
replace it all with the new one, once I restart, XP changes it back to
the original. Perhapes someone can help with driver replacing in XP.

Download the SP1 afd.sys: http://www.neodude.net/afd.sys
Deze topic mag dus gesloten worden :)

Acties:
  • 0 Henk 'm!

  • GlowMouse
  • Registratie: November 2002
  • Niet online
js303 schreef op zondag 18 mei 2008 @ 22:13:
[...]
He dat kan toch helemaal niet. een URL openen in kladblok?
Onder Win98 ging dat geloof ik niet nee, maar in WinXP is het geen probleem. Je had daar de mangled output wellicht gezien.

Acties:
  • 0 Henk 'm!

  • js303
  • Registratie: April 2003
  • Laatst online: 01-06 10:17
GlowMouse schreef op zondag 18 mei 2008 @ 23:36:
[...]

Onder Win98 ging dat geloof ik niet nee, maar in WinXP is het geen probleem. Je had daar de mangled output wellicht gezien.
Hmm dat zal dan wel XP met SP2 zijn want op deze (ouwe) XP doet kladblok het echt niet (geprobeerd: Open: http://127.0.0.1/info.php)
Pagina: 1