рдЖрдк PHP рдореЗрдВ рд╡реЗрдм рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рд╕реНрдерд┐рд░рддрд╛ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИрдВред рд▓реЛрдб рд▓рдЧрд╛рддрд╛рд░ рдмрдврд╝ рд░рд╣рд╛ рд╣реИ, рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЧреНрд░рд╛рд╣рдХ рд╕рдВрддреБрд╖реНрдЯ рд╣реЛрддреЗ рд╣реИрдВред рдПрдХ рдареАрдХ рджрд┐рди рд░рд╣рд╕реНрдпрдордп рддреНрд░реБрдЯрд┐рдпрд╛рдВ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд▓рдЧрддреА рд╣реИрдВ ...

рд╕рд░реНрд╡рд░ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рддреНрд░реБрдЯрд┐рдпрд╛рдВ
... рдХреМрди рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреИрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕рд░реНрд╡рд░ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ "рдмреНрд░реЗрдХ рдбрд╛рдЙрди", рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдкрд╛рдЪреЗ-PHP рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ - рдФрд░ рдЧреНрд░рд╛рд╣рдХ рдЕрдиреБрд░реЛрдз рдХреЗ рдЬрд╡рд╛рдм рдореЗрдВ рдирд┐рдпрдорд┐рдд рд░рдЦрд░рдЦрд╛рд╡ рдкрд░ рдПрдХ рдкреГрд╖реНрда рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдЕрдХреНрд╕рд░ рдпреВрдирд┐рдХреНрд╕ / рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рд╕реА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд╛ рдЧрд╣рд░рд╛ рдЬреНрдЮрд╛рди рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХ рдЕрдХреНрд╕рд░, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдмреИрд╢ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдЧрд╣рд░рд╛ рдЧреЛрддрд╛ рдирд╣реАрдВ рд▓рдЧрд╛рддрд╛ рд╣реИред рдЕрд╕рд▓реА рдХрдЯреНрдЯрд░ :-)
рд╕рд░реНрд╡рд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЕрд╕реНрдерд┐рд░ рд╕рдВрдЪрд╛рд▓рди
рдЕрдХреНрд╕рд░, рдПрдХ рд╡реЗрдм рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдХреБрдЫ рдкреГрд╖реНрда рдкрд╛рдЧрд▓ рд╣реЛрдиреЗ рд▓рдЧрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕реЗ рдкреВрд░рд╛ рдХрд░рдиреЗ рдореЗрдВ 15 рдорд┐рдирдЯ рд▓рдЧрддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИред
рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдПрдХ рдкрд┐рдЫрд▓реА рдкреЛрд╕реНрдЯ рдореЗрдВ, рдореИрдВрдиреЗ
рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрд░реАрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдХрд┐ рдПрдХ рд▓рдбрд╝рд╛рдХреВ рд╕рд░реНрд╡рд░ рдкрд░ рдПрдХ PHP рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреНрдпрд╛ рдХрд░рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдЕрдзрд┐рдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдЙрдкрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдореБрдЭреЗ рдЕрдХреНрд╕рд░ рдРрд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдБ рдЖрддреА рд╣реИрдВ рдЬреЛ рд╕рд░реНрд╡рд░ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рдПрдХ рд╕рдорд╛рди рд╢реНрд░реЗрдгреА рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддреА рд╣реИрдВ, рдФрд░ рдЯреАрдо рдХреЛ рд╣рдореЗрд╢рд╛ рдирд╣реАрдВ рдкрддрд╛ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИред рдЕрдкрдХреЗрд╢рди рд▓реЙрдЧ рдореЗрдВ рдЕрдХреНрд╕рд░ рд╕реЗрдЧрдореЗрдВрдЯреЗрд╢рди рдлрд╝реЙрд▓реНрдЯ рд╕рдВрджреЗрд╢ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ, рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдПрдХ рдПрд░рд░ рдкреЗрдЬ рдорд┐рд▓рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░ рдЬреЛ рдЕрдкрдиреЗ рджрд┐рдорд╛рдЧ рдХреЛ рд░реИрдХ рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, PHP / Apache / precompiler рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдЦреЗрд▓рддреЗ рд╣реИрдВ, рдмрд╛рд░-рдмрд╛рд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рд╕реНрд░реЛрдд рд╕реЗ PHP рдЗрдХрдЯреНрдард╛ рдХрд░рддреЗ рд╣реИрдВред рдмрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдЦреЗрдВ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рдпрд╣ рд╕рд╛рдмрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдпреЗ PHP рдмрдЧ рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдирдХреЗ рдХреЛрдб, рдФрд░ рдЗрд╕реА рддрд░рд╣ рдЕрдирдиреНрддрддрд╛ ...
рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рдЖрдкрдХреЛ рдпрд╣ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдХреИрд╕реЗ рдЬрд▓реНрджреА рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд╛рд░рдг рдкрд╛рдПрдВ рдХрд┐ PHP рдПрдХ рд▓рдбрд╝рд╛рдХреВ рд╕рд░реНрд╡рд░ рдкрд░ рдЯреВрдЯ рдЧрдпрд╛ рдФрд░ рдЗрд╕реЗ рдЦрддреНрдо рдХрд░ рджрд┐рдпрд╛ - рдпреВрдирд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рд╕реА рд╕рд┐рд╕реНрдЯрдо рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреА рд╕реБрдВрджрд░ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдбреБрдмрдХреА рдХреЗ рдмрд┐рдирд╛ :-) рдЖрдкрдХреЛ рдПрдХ рдЗрдЪреНрдЫрд╛ рдФрд░ рдПрдХ рдХрдк рдХреЙрдлреА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
рд╣рдо рд╡реЗрдм рд╕рд░реНрд╡рд░ рддреНрд░реБрдЯрд┐ рд▓реЙрдЧ рдореЗрдВ рджреЗрдЦрддреЗ рд╣реИрдВ
рдпрджрд┐ рдЖрдк рдЕрдкрд╛рдЪреЗ рддреНрд░реБрдЯрд┐ рд▓реЙрдЧ рдореЗрдВ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рд▓реЗрдЦ рдЖрдкрдХреЗ рд▓рд┐рдП рд╣реИ:
[Mon Oct 01 12:32:09 2012] [notice] child pid 27120 exit signal Segmentation fault (11)

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, PHP рддреНрд░реБрдЯрд┐ рд▓реЙрдЧ рдореЗрдВ рд╡рд┐рд╕реНрддреГрдд рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрдХрд╛рд░ рд╣реИ - рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реА рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рдЧрдИ, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд╣реАрдВред рдпрджрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рдирдЧреНрдиреЗрдХреНрд╕ рдкрд░ рдирд┐рдпрдорд┐рдд рд░рдЦрд░рдЦрд╛рд╡ рдкрд░ рдПрдХ рдЕрдЪреНрдЫрд╛ рдкреГрд╖реНрда рдирд╣реАрдВ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рддрдкрд╕реНрд╡реА рддреНрд░реБрдЯрд┐ "50 *" рджрд┐рдЦрд╛рдИ рджреЗрдЧреАред
рдореИрдВ рдХрд┐рд╕реА рдХреЛ рдЪреЗрд╣рд░реЗ рдкрд░ рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдХрд┐рд╕рдХреЛ? :-) рд╡рд┐рдирд╛рд╢рдХрд╛рд░реА рдирд┐рд░реНрдгрдпреЛрдВ рд╕реЗ рдзреНрдпрд╛рди рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЛ рдпрд╛рдж рдХрд░рддреЗ рд╣реИрдВред
рдПрдХ рд╕рдВрдХреЗрдд рдХреНрдпрд╛ рд╣реИ? рдпрд╣, рдЖрдк рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ, рд╡рд╣ рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдпрд╣ рдмрддрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрд╣, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЧрд▓рдд рд╣реИ :-) рдпрд╣ рд▓реЗрддрд╛ рд╣реИ рдФрд░, рдЧрдгрд┐рдд рдХреЗ рдирд┐рдпрдореЛрдВ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рддреЗ рд╣реБрдП, 0 ... рдпрд╛ рдордЬрдмреВрд░ рдХрд╛рд░реНрдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдПрдХ рд╕реНрдЯреИрдХ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо 11 рдирдВрдмрд░ рдФрд░ "SIGSEGV" рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдВрдХреЗрдд рджреЗрдЦрддреЗ рд╣реИрдВред "рдХрд┐рд▓-рдПрд▓" рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдХреЗ рд╕рдВрдХреЗрддреЛрдВ рдХреА рд╕реВрдЪреА рджреЗрдЦреА рдЬрд╛ рд╕рдХрддреА рд╣реИ:
...
11) SIGSEGV
...
рдХреБрдЫ рд╕рдВрдХреЗрдд, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, SIGSEGV рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреА рдЕрдкрд╛рдЪреЗ-рдкреАрдПрдЪрдкреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдирд┐рд░реНрджрдпрддрд╛рдкреВрд░реНрд╡рдХ рдЯреНрд░рд╛рдпрд▓ рдХреЗ рдмрд┐рдирд╛ рдХрд░реНрдиреЗрд▓ рджреНрд╡рд╛рд░рд╛ рдорд╛рд░ рджреА рдЬрд╛рдПрдЧреАред рдпрд╣ рдЙрд╕реЗ рдЕрд╡рд░реЛрдзрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдареАрдХ рдирд┐рдХрд▓рддрд╛ рд╣реИ - рдпрд╣ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рд╕реНрд░реЛрдд рдореЗрдВ рдЪрдврд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ :-)
рдФрд░ рдЙрдиреНрд╣реЛрдВрдиреЗ рдЙрд╕реЗ рдХреНрдпреЛрдВ рдорд╛рд░рд╛?
рдЕрдм рдЖрдЗрдП рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдЬрд╛рдиреЗрдВ рдХрд┐ рдЕрдкрд╛рдЪреЗ-рдкреАрдПрдЪрдкреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреНрдпреЛрдВ рдорд╛рд░реА рдЧрдИ? рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдорд╛рд░ :-) рдпрд╛ coredump рдХреЗ рд╕рдордп рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдореЛрд░реА рдХреЗ рдбрдВрдк рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред рд╣рд╛рдВ, рд╣рд╛рдВ - рдЕрдм рддрдХ, рдПрдХ рдЕрдкреНрд░рдЪрд▓рд┐рдд 50-рд╡рд░реНрд╖реАрдп рд╢рдмреНрдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде
рд╣реИ рдЪреБрдВрдмрдХреАрдп рдХреЛрд░ рд╕реЗ рдбреЗрдЯрд╛ рдХрд╛ рднрдВрдбрд╛рд░рдгред рдЬреИрд╕реЗ рд╣реА рдЕрдЧрд▓реА рдмрд╛рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рджреНрд╡рд╛рд░рд╛ рдорд╛рд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХрд░реНрдиреЗрд▓ рджреНрд╡рд╛рд░рд╛ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИ - рдЬрдЧрд╣ рдФрд░ рдЙрд╕рдХрд╛ рдирд╛рдо
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред рдпрджрд┐ рдЖрдк рдХрдВрд╕реЛрд▓ рдореЗрдВ рд╣реИрдВ, рддреЛ "рдореИрди 5 рдХреЛрд░" рдЯрд╛рдЗрдк рдХрд░реЗрдВред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдЗрд╕ рддрд░рд╣ рд╕реЗ рдбреИрдбреА рдореЗрдВ рдлрд╛рдЗрд▓ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ:
рдЗрдХреЛ "/tmp/httpd-core.%p"> / proc / sys / рдХрд░реНрдиреЗрд▓ / core_pattern
рдпрджрд┐ рдХреБрдЫ рднреА рд╕реЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреА рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ "coreред # Process_number #" рдирд╛рдордХ рдПрдХ рдлрд╛рдЗрд▓ рдмрдирд╛рдПрдЧрд╛ред
рдмрд╕ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ Apache-PHP рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдиреЗ рд╡рд╣рд╛рдВ рдЕрдиреБрдорддрд┐рдпрд╛рдБ рд▓рд┐рдЦреА рд╣реИрдВред
рд╡рд╣ рд╕рдм рдирд╣реАрдВ рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдЖрдкрдХреЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ coredump рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдкреАрдврд╝реА рдЕрдХреНрд╖рдо рд╣реИред рдЖрдк рд╡реЗрдм рд╕рд░реНрд╡рд░ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рд▓рд╛рдЗрди рдбрд╛рд▓рдХрд░ рдЗрд╕реЗ рд╕рдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
ulimit - unlimited
рдпрд╛, рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рд╕реНрдерд╛рдпреА рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдлрд╝рд╛рдЗрд▓ "/etc/security/limits.conf" рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВред рдЖрдк рд╡рд╣рд╛рдВ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
apache - core -1
рдлрд╝рд╛рдЗрд▓ рдкреНрд░рд╛рд░реВрдк рдкрд░ рд╡рд┐рд╡рд░рдг "рдореИрди рд▓рд┐рдорд┐рдЯреНрд╕.рдХреЙрдиреНрдлрд╝" рд╣реИрдВред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬрдм рддрдХ рдореИрдВ рдЕрдкрд╛рдЪреЗ рдХреЗ рд▓рд┐рдП coredump рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗрдЯ рдирд╣реАрдВ рдХрд░рддрд╛, рддрдм рддрдХ
рдХреБрдЫ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ ("/etc/httpd/conf/httpd.conf"):
CoreDumpDirectory /tmp

рдЕрдм рдЕрдкрд╛рдЪреЗ рдХреЛ рдкреБрдирдГ рдЖрд░рдВрдн рдХрд░реЗрдВ:
service httpd restart
рд╣рдо рдкрд░реАрдХреНрд╖рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдорд╛рд░реЗрдВ:
ps aux | grep httpd
...
рдорд╛рд░ -11 12345
рд╣рдо "/ var / log / httpd / error_log" рдореЗрдВ рджреЗрдЦрддреЗ рд╣реИрдВ:
[Mon Oct 01 16:12:08 2012] [notice] child pid 22596 exit signal Segmentation fault (11), possible coredump in /tmp
"/ Tmp" рдореЗрдВ рдЕрдм рд╣рдореЗрдВ "/tmp/httpd-core.296/3" рдирд╛рдо рд╕реЗ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдорд┐рд▓реЗрдЧреА
рдЖрдкрдиреЗ рд╕реАрдЦрд╛ рдХрд┐ рдПрдХ рдорд╛рд░реЗ рдЧрдП рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреА рдореЗрдореЛрд░реА рдбрдВрдк рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред рдЕрдм рд╣рдо рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ рдорд╛рд░реЗ рдЬрд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдЕрдкрд░рд╛рдз рд╕реНрдерд▓ рдкрд░ - рдХреЛрд░рдкрдореНрдк рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░реЗрдВ
рдпрд╣ рдЬрд╛рдирдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдЕрдЧрд░ PHP рдбрд┐рдмрдЧрд┐рдВрдЧ рдкреНрд░рддреАрдХреЛрдВ (рд╕рдВрдХрд▓рди рдХреЗ рджреМрд░рд╛рди -enable-debug, -g рдХреБрдВрдЬреА рдХреЗ рд▓рд┐рдП) рдХреЗ рдмрд┐рдирд╛ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рд╣рдо рдмрд╣реБрдд рд╕рд╛рд░реА рдЙрдкрдпреЛрдЧреА рдЬрд╛рдирдХрд╛рд░реА рдЦреЛ рджреЗрдВрдЧреЗред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрджрд┐ рдЖрдкрдиреЗ рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЗ рдмрд┐рдирд╛ рднреА PHP рдХреЛ рд╕реНрд░реЛрдд рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рд╕реНрд░реЛрдд рдкрд╛рд╕ рд╣реИрдВ - рдпрд╣ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рдЕрднреА рднреА рдПрдХ рдмрд╣реБрдд рд╣реА рдЖрдо рдЧрд▓рдд рдзрд╛рд░рдгрд╛ рд╣реИ рдХрд┐ рдбрд┐рдмрдЧ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рджреНрд╡рд╛рд░рд╛ рднрд╕реНрдо рд╕реНрдореГрддрд┐ рдкрджрдЪрд┐рд╣реНрдиред рдпрд╣ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЖрдХрд╛рд░ рдХреЗрд╡рд▓ рдмрдврд╝рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рдбрд┐рдмрдЧрд┐рдВрдЧ рдмрд┐рд▓реНрдб рдХреЗ рдмрд┐рдирд╛ рддреНрд░реБрдЯрд┐ рдХреЗ рдХрд╛рд░рдг рдХрд╛ рдкрддрд╛ рдирд╣реАрдВ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рд╕рд┐рд╕реНрдЯрдо рдПрдбрдорд┐рдирд┐рд╕реНрдЯреНрд░реЗрдЯрд░ рд╕реЗ рдбрд┐рдмрдЧрд┐рдВрдЧ рдкреНрд░рддреАрдХреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ PHP рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдВред

рдХреЛрд░рдкрдореНрдк рдХреИрд╕реЗ рдЦреЛрд▓реЗрдВ? рдмреЗрд╢рдХ, рдкреБрд░рд╛рдиреА рдФрд░ "рдмрд╣реБрдд рджрдпрд╛рд▓реБ" рдЙрдкрдпреЛрдЧрд┐рддрд╛ -
рдЬреАрдбреАрдмреА , рдореВрд▓ рд░реВрдк рд╕реЗ
рдореБрдлреНрдд рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЖрдВрджреЛрд▓рди рдХреЗ рдЙрдЪреНрдЪ рдкреНрд░реЗрд╖рд┐рдд
рд░рд┐рдЪрд░реНрдб рд░рд┐рдЪрд░реНрдбрдореИрди рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдЦреА рдЧрдИ рд╣реИред
рдбрд┐рдмрдЧрд░ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдпрд╣ рд╕рдордЭрдиреЗ рдореЗрдВ рдЬреНрдпрд╛рджрд╛ рд╕рдордп рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИред рдЖрдк рдХреБрдЫ рдШрдВрдЯреЛрдВ рдореЗрдВ
рд╕рдмрд╕реЗ рдордиреЛрд░рдВрдЬрдХ рдкрд╛рдареНрдп рдкреБрд╕реНрддрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдЕрд╡рд╢реЛрд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдЖрдк рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХ рд╕реЗ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ;;
рдЖрдорддреМрд░ рдкрд░ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЦреБрд▓рд╛ coredump:
gdb path_to_ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп_file_web рд╕рд░реНрд╡рд░ path_to_coredump
рдпреВрдирд┐рдХреНрд╕ рдкрд░ рд╕рднреА рд╕реНрд╡рд╛рднрд┐рдорд╛рдиреА рд╕реА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕ рдбрд┐рдмрдЧрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡реЗ рд╢рд╛рдпрдж рд╣рд░ рджрд┐рди рдРрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд╡реЗ рдЖрдкрдХреА рдЯреАрдо рдореЗрдВ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рдПрдХ рдФрд░ рдЕрдкреНрд░рд┐рдп BUT рд╣реИ ...
Gdb рдореЗрдВ PHP рдбрд┐рдмрдЧрд┐рдВрдЧ - рдХрд╛рд▓рд╛ рдЬрд╛рджреВ
рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдПрдХ PHP рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдмрд╛рдИрдЯреЗрдХреЛрдб рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ... рдХрд╛рдлреА рд╕реА рдкреНрд░реЛрдЧреНрд░рд╛рдо рдирд╣реАрдВ рд╣реИ;;
рдЬрд╝реЗрдВрдб рдЗрдВрдЬрди рдХреЗ рдЗрдирд╕рд╛рдЗрдб
рдХреЛ рд╕рдордЭреЗрдВ - рдФрд░ рдЖрдк
рдмрд╣реБрдд рдЬрд▓реНрджреА рд╕рдордЭ рдЬрд╛рдПрдВрдЧреЗ ред рдЕрд░реНрдерд╛рддреН, рдЖрдкрдХреЛ рдЯреНрд░реЗрд╕ рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рдХреЙрд▓ рдЦреЛрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд╕реНрдЯреИрдХ рдХреЗ рдЗрд╕ рдлреНрд░реЗрдо рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рд╕реНрдерд╛рдиреАрдп рдЪрд░ (op_array) рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ, рд╕рд╛рде рд╣реА Zend рдЗрдВрдЬрди рдХреЗ рд╡реИрд╢реНрд╡рд┐рдХ рдЪрд░ рдХреЛ рджреЗрдЦреЗрдВ:
(gdb) frame 3 #3 0x080f1cc4 in execute (op_array=0x816c670) at ./zend_execute.c:1605 (gdb) print (char *)(executor_globals.function_state_ptr->function)->common.function_name $14 = 0x80fa6fa "pg_result_error" (gdb) print (char *)executor_globals.active_op_array->function_name $15 = 0x816cfc4 "result_error" (gdb) print (char *)executor_globals.active_op_array->filename $16 = 0x816afbc "/home/yohgaki/php/DEV/segfault.php"

рдЖрдк op_array рдХреЗ рд╕рд╛рде рднреНрд░рдорд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╕рдВрд░рдЪрдирд╛ рдЬреИрд╕реА рд▓реБрдХрдЕрдк рдХрдорд╛рдВрдб рдЙрдкрдпреЛрдЧреА рд╣реИ:
(gdb) ptype op_array type = struct _zend_op_array { zend_uchar type; char *function_name; zend_class_entry *scope; zend_uint fn_flags; union _zend_function *prototype; zend_uint num_args; zend_uint required_num_args; zend_arg_info *arg_info; zend_bool pass_rest_by_reference; unsigned char return_reference; zend_uint *refcount; zend_op *opcodes; zend_uint last; zend_uint size; zend_compiled_variable *vars; int last_var; int size_var; zend_uint T; zend_brk_cont_element *brk_cont_array; zend_uint last_brk_cont; zend_uint current_brk_cont; zend_try_catch_element *try_catch_array; int last_try_catch; HashTable *static_variables; zend_op *start_op; int backpatch_count; zend_bool done_pass_two; zend_bool uses_this; char *filename; zend_uint line_start; zend_uint line_end; char *doc_comment; zend_uint doc_comment_len; void *reserved[4]; } *
рдбрд┐рдмрдЧрд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╕реНрдЯреИрдХ рдХреЗ рдлреНрд░реЗрдо ("рдлреНрд░реЗрдо рдПрди") рдХреЗ рдмреАрдЪ рдЪрд▓рдирд╛ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рдХреЙрд▓ рдХреЛ "рдирд┐рд╖реНрдкрд╛рджрд┐рдд" рдлрд╝рдВрдХреНрд╢рди рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд╕реНрдерд╛рдиреАрдп рддрд░реНрдХреЛрдВ ("рдкреНрд░рд┐рдВрдЯ рдирд╛рдо", "ptype рдирд╛рдо") рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИред рдлреНрд░реЗрдо рд╕рдВрдЦреНрдпрд╛ рдЬрд┐рддрдиреА рдХрдо рд╣реЛрдЧреА, рдЖрдк рдЙрддрдиреЗ рд╣реА рдЧрд╣рд░реЗ рд╣реЛрдВрдЧреЗред PHP рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдкрд░ рдЬрд╛рдиреЗ рдФрд░ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрднреА-рдХрднреА рдЙрдкрдпреЛрдЧреА рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рддреНрд░реБрдЯрд┐ рдХрд╣рд╛рдВ рд╣реБрдИ рдФрд░ рдХреНрдпреЛрдВ (рдХрдо рд╕реЗ рдХрдо рдХрд╛рд░рдг рд╕рдордЭрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ)ред
(gdb) frame ## (gdb) print op_array.function_name $1 = 0x2aaab7ca0c10 "myFunction" (gdb) print op_array.filename $2 = 0x2aaab7ca0c20 "/var/www/file.php"
рдФрд░ рдЗрд╕реА рддрд░рд╣ ...
рдпрджрд┐ рдЖрдк рдХреЙрдлрд╝реА :-) рдкрд░ рджрдо рдШреБрдЯрддреЗ рд╣реИрдВ, рддреЛ рдмрд╕ рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ "рдлреНрд░реЗрдо # рдПрди #" рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЙрд▓ рд╕реНрдЯреИрдХ рдХреЗ рдлреНрд░реЗрдо рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░рддреЗ рд╕рдордп, рдЖрдк рдЗрд╕ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд╕рднреА рд╡рд┐рд╢рд┐рд╖реНрдЯ рддрддреНрд╡реЛрдВ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ - рдФрд░ рдЖрдк рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдЬрд┐рд╕рдореЗрдВ PHP рдлрд╝рд╛рдЗрд▓ рдХреЛ PHP рдлрд╝рдВрдХреНрд╢рди рдХрд╣рд╛ рдЬрд╛рддрд╛ рдерд╛, рдЙрд╕рдиреЗ рдХреНрдпрд╛ рдХрд╛рд░реНрдп рдХрд┐рдпрд╛ , рдЖрджрд┐ред - рдФрд░ рдЖрдк "рд╕реЗрдЧрдореЗрдВрдЯреЗрд╢рди рдлреЙрд▓реНрдЯ" рдпрд╛ рдЕрдиреНрдп рддреНрд░реБрдЯрд┐ рдХреЗ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдиреЗ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдорд╛рд░ рджрд┐рдпрд╛ред рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░реНрд╕ рдХреЛ рд╕рдордЭрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдХрд╛рд░рдг рд╣реИ рдФрд░ рд╡реЗ рдЗрд╕реЗ рд╕рд╣реА рдХрд░реЗрдВрдЧреЗ! рдЬрд▓реНрджреА рд╕реЗ, рдФрд░ рдПрдХ рдЖрд╢рд╛рд╡рд╛рджреА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП - рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдПред
рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рдХрд╛рд░рдг
Coredump рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмреНрд░рд╛рдЙрдЬрд╝ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВ (рдпрд╛ рдЗрд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдПрдбрдорд┐рдирд┐рд╕реНрдЯреНрд░реЗрдЯрд░ рдХреЛ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВ) рдФрд░ рдЖрдк рддреЗрдЬрд╝реА рд╕реЗ рд╕реАрдЦреЗрдВрдЧреЗ рдХрд┐ рд╕рдореВрд╣реЛрдВ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдХреИрд╕реЗ рд╡рд░реНрдЧреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдП:
1) PHP рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдПрдВред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдпрд╛ рддреЛ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ, рдпрд╛ рдЗрд╕рдХреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдЗрд╕рдореЗрдВ рд╣реИ, рдорд╛рдорд▓рд╛ рдЫреЛрдЯрд╛ рд╣реИред
2) рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐, рд╕реНрдЯреИрдХ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ред рдЖрдк рдПрдХ рддреНрд░реБрдЯрд┐ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕рдорд╛рд░реЛрд╣, рдЬреИрд╕реЗ рдХрд┐ рдкреАрд╕реАрдЖрд░, рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЦреБрдж рдХреЛ рдмреАрд╕ рд╣рдЬрд╛рд░ рдмрд╛рд░ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред рдЖрдк рдпрд╛ рддреЛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛, рдпрджрд┐ рдЖрдк рдмрд╣реБрдд рдЖрд▓рд╕реА рд╣реИрдВ, рддреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдПрдХ рдмрдбрд╝рд╛ рд╕реНрдЯреИрдХ рдЬреЛрдбрд╝реЗрдВ ("/etc/init.d/httpd"):
ulimit -s "рдЕрдзрд┐рдХ рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ"
рдФрд░ рд╡рд░реНрддрдорд╛рди рдореВрд▓реНрдп рдХреЛ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: "рдЕрд▓рд┐рдорд┐рдд-рдП" (рдЖрджрдореА рдЕрд▓рд┐рдорд┐рдЯ, рдлрд┐рд░ "рдЕрд▓рд┐рдореЗрдЯ" рджреЗрдЦреЗрдВ)ред
3) PHP рдХреЛрд░ рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдПрдБ - рдпрд╣рд╛рдБ рдЖрдкрдХреЛ PHP рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ :-)
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рддреНрд░реБрдЯрд┐ рдХреЗ рдХрд╛рд░рдгреЛрдВ рдХреА рд╕реАрдорд╛ рдХреЛ рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЬреЛ рд╣рдореЗрдВ рдЪрд╛рд╣рд┐рдПред

рдЪрд▓ рд░рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдбреАрдмрдЧ рдХрд░рдирд╛
рд╡рд╣ рд╕рдм рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдЖрдк coredump рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд░рдирд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдЬреБрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕ рдкрд░ рдЪрд▓ рд╕рдХрддреЗ рд╣реИрдВред рдЬрдм рдЖрдк рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдЕрдВрджрд░ рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд░реЛрдХ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ("ps aux | grep apache | grep 'T'" - рдпрд╣ рдЕрдиреБрд░реЗрдЦрдг рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛрдЧрд╛)ред рдЬрдм рдЖрдк рдЙрд╕реЗ рдЫреЛрдбрд╝ рджреЗрдВрдЧреЗ, рддреЛ рд╡рд╣ рдлрд┐рд░ рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЖрдк рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХрдиреЗрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
gdb -p рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЖрдИ.рдбреА.
рдкрд░рд┐рдгрд╛рдо
рд▓реЗрдЦ рдореЗрдВ, рд╣рдордиреЗ рд╕реАрдЦрд╛ рдХрд┐ рдХреИрд╕реЗ рд╕рд░реНрд╡рд░ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ "рд╕рд╣реА рдврдВрдЧ рд╕реЗ рддреИрдпрд╛рд░" рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдкрд╛рдЪреЗ-PHP рдбреАрдмрдЧ рдмрд┐рд▓реНрдб рдмрдирд╛рддрд╛ рд╣реИ, рдХреЛрд░рдбрдВрдк рдлрд╛рдЗрд▓реЗрдВ рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдПрдХ рдкреНрд░рддреАрдХрд╛рддреНрдордХ рдбрд┐рдмрдЧрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрдиреНрд╣реЗрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рддрд╛ рд╣реИред рд╣рдордиреЗ рдпрд╣ рднреА рд╕реАрдЦрд╛ рдХрд┐ coredump рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдЖрдк рд╡рд┐рд╢рд┐рд╖реНрдЯ PHP рдлрд╝рд╛рдЗрд▓ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдвреВрдВрдв рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рддреНрд░реБрдЯрд┐ рдХрд╛ рдХрд╛рд░рдг рдмрдирд╛ред
рдЕрдм рдЖрдк рд░рд╣рд╕реНрдпрдордп рд╕рд░реНрд╡рд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдмрдВрдзрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдЪреЗрдХрд▓рд┐рд╕реНрдЯ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рди рддреЛ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рди рд╣реА рд╕рд┐рд╕реНрдЯрдо рдПрдбрдорд┐рдирд┐рд╕реНрдЯреНрд░реЗрдЯрд░ рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ:
- рд╕рд░реНрд╡рд░ (sysadmin) рдкрд░ coredump рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рд╕рдВрдЧреНрд░рд╣ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
- рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рдбрд┐рдмрдЧрд┐рдВрдЧ рдкреНрд░рддреАрдХреЛрдВ (sysadmin) рдХреЗ рд╕рд╛рде Apache-PHP рдХрд╛ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВ
- Gdb (рдЗрд╕реЗ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдкреНрддрд╛рд╣рд╛рдВрдд) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рддреНрд░реБрдЯрд┐ рдХреЗ рдХрд╛рд░рдг рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ (рд╕рд┐рд╕реНрдЯрдо рдбреЗрд╡рд▓рдкрд░ рдПрдХ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд╕рд╛рде)
- рдЗрд╕реЗ рдЦрддреНрдо рдХрд░рдиреЗ рдпрд╛ рдШрдЯрдирд╛ рдХреА рдЖрд╡реГрддреНрддрд┐ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрд╛рдп рдХрд░реЗрдВ: рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдмрджрд▓реЗрдВ, рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ, рдмрдЧрдЯреНрд░реИрдХрд░ рдкрд░ рд▓рд┐рдЦреЗрдВ, PHP рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ, рдЖрджрд┐ред
рдЕрдВрдд рдореЗрдВ, рдореИрдВ рд╕рднреА рдХреЛ рд╣рдорд╛рд░реА
рдмрд┐рдЯреНрд░рд┐рдХреНрд╕ 24 рдХреНрд▓рд╛рдЙрдб рд╕реЗрд╡рд╛ рдореЗрдВ рдЖрдордВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ, рдЬрд┐рд╕рдореЗрдВ рд╣рдо рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╕рднреА рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рд╕рднреА рдХреЛ рд╢реБрднрдХрд╛рдордирд╛рдПрдБ рдФрд░ рд╡реЗрдм рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд╕реНрдерд┐рд░ рдХрд╛рдо!