Beste Manier Om Gdb Debug Apache Php-problemen Op Te Lossen

In de afgelopen paar dagen zijn sommige lezers verpakt in een bekende bug voor gdb debug apache php. Dit probleem wordt veroorzaakt door een aantal situaties. We zullen ze hieronder bekijken.

Heeft u een computer nodig die sneller, stabieler en geoptimaliseerd is voor prestaties? Probeer dan Reimage.

Unix | venster

PHP-crashmelding

Er is geen volledige reden om te weten dat PHP meestal faalt, maar het kan zijn dat er tekenen zijn.Wanneer u een pagina opent, wordt doorgaans verwacht dat deze altijd wordt beheerd (dwz.het vorige HTML-blok), het onderwerp “Document bevat weinig gegevens” verschijnt ook allemaal.In uw browser kan dit betekenen dat PHP ergens langs de lijn faalt.scenario. Een andere manier om erachter te komen of PHP faalt, kan worden beschreven als naar Apache kijken.Foutlogboeken, maar ook daarna (Apache segv 1.2) samen met segfault (Apache1.3).

Belangrijk!

Om een ​​nauwkeurige traceback met de juiste gegevens te krijgen, moet PHP worden geconfigureerd.--enable-debug!

Als je nog geen hoofdbestand hebt:

  • Verwijder alle lagen van je toewijding die je zou kunnen verliezen omdat ze je helpen bij de grootte van de kernel:
  • tcsh: Onbeperkte vitale dump
  • bash/sh: ulimit -cUnlimited
  • Zorg ervoor dat het soort directory waarin u PHP draait, of PHP heeft het mogelijk gemaakt dat httpd schrijfrechten heeft om een ​​gebruiker te formuleren die met PHP werkt.
  • PHP-crash:
  • PHP CGI: SimpleQuit Perl met een verhaal dat niet werkt
  • Voer Apache PHP-cursus uit: httpd -X en open het script dat PHP-crash veroorzaakt
  • Een geweldige algemene manier om altijd een kernel op Linux te krijgen

  • Stel de kernel in (voer het commando uit als root):
  • echo “/core-%e.%p” > /proc/sys/kernel/core_pattern
  • Zorg ervoor dat PHP schrijven naar de opgegeven map toestaat.
  • Ulimit instellen (meer info).
  • Herstart/start PHP.
  • Daarna zal elk proces dat uw proces heeft gecrasht en PHP heeft geïnjecteerd, worden opgenomen.core uit de map waarin uw organisatie core_pattern heeft opgegeven.

    Nadat uw organisatie het hoofdbestand heeft ontvangen:

  • Voer gdb uit met meestal het pad naar httpd php of een functioneel compatibel php-binair hierboven via welk pad. naar het basisbestand. Een paar voorbeelden:
  • gdb /usr/local/apache/sbin/httpd /usr/local/apache/sbin/core
  • gdb /home/user/dev/php-snaps/sapi/cli/php /home/user/dev/testing/core
  • Voer op de gdb-opdrachtregel uit:
  • (gdb)bt
  • Als u dit hoofdbestand niet kunt krijgen:

  • Voer httpd -X uit wanneer u gdb als volgt overweegt:
  • gdb /usr/local/apache/sbin/httpd
  • (gdb) functies met -X
  • Gebruik vervolgens uw verplaatsbare webbrowser en ga naar de host om het probleem op te lossen. ze moet zoeken naar de gdb onmiddellijk en enkele berichten die hier uiteindelijk op wijzen een ramp geworden. Op dit vaardigheidspunt typ je gdb:
  • (gdb)bt
  • of mogelijk een misschien die handvat is vanaf de opdrachtregel

    Verwijder malware, bescherm uw bestanden en optimaliseer de prestaties met één klik!