Re: [linux-neuchatel] [PHP] 5.2 et [Apache] 2.2.3 - Bug quand il y a overflow de donnée ?
Jean-frederic Clere
jfclere at gmail.com
Fri Nov 24 23:35:50 CET 2006
Christian Wagner wrote:
>Tarjan est un très ancien algorithme utilisé pour connaître les composantes fortement connexes d'un graphe.
>
>Je viens de tester en ligne de commande avec PHP5.2 et le résultat est bien affiché.
>"<html><head></head><body>Utilisation Memoire [Début]: 0.1Mo<br>[Phase 1] Terminée<br>[Phase 2] Terminée<br>[Phase 3] Terminée<br>[Phase 4] Terminée<br>Utilisation Memoire [Get_Array_Tops]: 8.17Mo<br>
>Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 39 bytes) in /home/web/quakenet.ch/dev/GRE2006/WCH_Test/tarjan.php on line 30"
>
>Et à travers Apache :
>"<html><head></head><body>Utilisation Memoire [Dbut]: 0.11Mo<br>[Phase 1] Termine<br>[Phase 2] Termine<br>[Phase 3] Termine<br>[Phase 4] Termine<br>Utilisation Memoire [Get_Array_Tops]: 8.19Mo<br>"
>
>Par contre lorsque je passe par Apache 2.2.3 cela n'est plus le cas. J'ai essayé un downgrade sur Apache 2.0 comme c'était le cas avant la mise à jour mais impossible à chaque fois j'ai pleins d'erreurs.
>
>Je suppose donc que la librairie PHP5.2 n'est pas compatible avec Apache 2.2.3 pour les dépassement de capacité.
>
>
Vu tes explications il me semble que tu ne compile pas httpd ni php
toi-meme, il est donc difficile de te proposer un patch, correct? (En
plus il faudrait trouver le probleme).
Arrives-tu a reproduire le probleme avec un script php simple?
>Si quelqu'un aurait une marche à suivre qui fonctionne pour un downgrade en 2.2 ou 2.0 ça serait sympa :)
>
>
Tu n'a pas changer uniquement php5 et httpd-2.0.x donc.
A+
Jean-Frederic
>Bonne soirée
>
>-----Message d'origine-----
>De : linux-neuchatel-bounces at lists.alphanet.ch [mailto:linux-neuchatel-bounces at lists.alphanet.ch] De la part de Marc SCHAEFER
>Envoyé : vendredi, 24. novembre 2006 21:52
>À : Activités Linux à Neuchâtel et environs
>Objet : Re: [linux-neuchatel] [PHP] 5.2 et [Apache] 2.2.3 - Bug quand il y a overflow de donnée ?
>
>On Fri, Nov 24, 2006 at 09:08:30PM +0100, Christian Wagner wrote:
>
>
>>Je dois travailler sur un laboratoire qui fait l'utilisation de l'algorithme
>>de tarjan. Celui-ci prends pas mal de mémoire mais là n'est pas trop le
>>
>>
>
>Je ne connais pas. Peux-tu en dire plus ?
>
>
>
>>Mais par contre dans error.log de apache2 voici ce que je trouve :
>>"[Fri Nov 24 20:51:38 2006] [notice] child pid 14944 exit signal
>>Segmentation fault (11)"
>>
>>
>
>PHP n'est probablement pas le langage idéal; et mod_php dans Apache
>pas forcément l'environnement idéal.
>
>
>
>>Quelqu'un aurait-il une idée pour résoudre le malheureux problème ?
>>
>>
>
>Un segmentation fault c'est en général l'indice d'une erreur de
>programmation, liée au déréférencement d'un pointeur NULL ou
>non initialisé.
>
>Si tu veux débugger plus avant, utilise la version non module Apache (installer
>php4-cgi je crois, lancer depuis le shell), et utilise les outils systèmes
>comme gdb (le debugger), ou active la génération de core dumps via
>`ulimit -c unlimited'.
>
>Mais il te faudra vraisemblablement débugger du C, langage dans lequel
>PHP est écrit.
>
>Il se peut que PHP réagisse ainsi à une erreur d'allocation de mémoire,
>indice de sa faible qualité, illustrée par un nombre d'attaques sur le
>langage et l'environnement assez ... fantastique (les scripts sont
>souvent pourris aussi, mais cela est un autre problème).
>
>Il se peut aussi que je ne sois pas du tout objectif.
>
>
>
More information about the linux-neuchatel
mailing list