kha*_*ael 6 php segmentation-fault
编辑已添加.
我从PHP三元操作中得到了一个分段错误.我正在使用PHP(5.4.13).
<?php
$t = empty($_GET['t2']) ? $_GET['t2'] : 'test';
$t = empty($_GET['t2']) ? 'test' : $_GET['t2'];
echo '<pre>'.print_r($t, true).'</pre>';
?>
Run Code Online (Sandbox Code Playgroud)
声明:
$t = empty($_GET['t2']) ? $_GET['t2'] : 'test';
$t = empty($_GET['t2']) ? 'test' : $_GET['t2'];
Run Code Online (Sandbox Code Playgroud)
调度分段错误(我检查了apache错误日志).上面评论的语句不会引发分段错误.
我怀疑这是唯一的源错误,但这是我能够缩小的范围.几乎所有使用这个php的网站现在都有这个问题.
我不认为这是一个错误!更多php安装或其中一个依赖项中的错误.但由于没有function使用,只有语言功能,我认为它可以很容易地缩小.
编辑: 我想知道导致分段错误的常见问题是什么,如果可以从上面的代码中识别出其中一个问题,那么我将知道在哪里寻找解决方案以及如何采取行动.(对于那些对此感到疑惑的人来说,这是个问题)
编辑2:
现在就绪,$ _GET中没有更多的任务,所以我想现在它是advisable有效的.但错误仍然存在.
编辑3:对于valgrind,跟踪是:
==3775== Process terminating with default action of signal 11 (SIGSEGV)
==3775== Bad permissions for mapped region at address 0x0
==3775== at 0x0: ???
==3775== by 0xF60F9F7: execute (in /opt/rh/php54/root/usr/lib64/httpd/modules/libphp5.so)
==3775== by 0xF5A619F: zend_execute_scripts (in /opt/rh/php54/root/usr/lib64/httpd/modules/libphp5.so)
==3775== by 0xF548E87: php_execute_script (in /opt/rh/php54/root/usr/lib64/httpd/modules/libphp5.so)
==3775== by 0xF650A94: ??? (in /opt/rh/php54/root/usr/lib64/httpd/modules/libphp5.so)
==3775== by 0x133BAF: ap_run_handler (in /usr/sbin/httpd)
==3775== by 0x13746D: ap_invoke_handler (in /usr/sbin/httpd)
==3775== by 0x142B2F: ap_process_request (in /usr/sbin/httpd)
==3775== by 0x13F9A7: ??? (in /usr/sbin/httpd)
==3775== by 0x13B6B7: ap_run_process_connection (in /usr/sbin/httpd)
==3775== by 0x147976: ??? (in /usr/sbin/httpd)
==3775== by 0x147C45: ??? (in /usr/sbin/httpd)
Run Code Online (Sandbox Code Playgroud)
而对于gdb是:
#0 0x0000000000000000 in ?? ()
#1 0x00007fc4dd8a49f8 in execute () from /etc/httpd/modules/libphp54-php5.so
#2 0x00007fc4dd83b1a0 in zend_execute_scripts () from /etc/httpd/modules/libphp54-php5.so
#3 0x00007fc4dd7dde88 in php_execute_script () from /etc/httpd/modules/libphp54-php5.so
#4 0x00007fc4dd8e5a95 in ?? () from /etc/httpd/modules/libphp54-php5.so
#5 0x00007fc4e818dbb0 in ap_run_handler ()
#6 0x00007fc4e819146e in ap_invoke_handler ()
#7 0x00007fc4e819cb30 in ap_process_request ()
#8 0x00007fc4e81999a8 in ?? ()
#9 0x00007fc4e81956b8 in ap_run_process_connection ()
#10 0x00007fc4e81a1977 in ?? ()
#11 0x00007fc4e81a1c46 in ?? ()
#12 0x00007fc4e81a2293 in ap_mpm_run ()
#13 0x00007fc4e8179900 in main ()
Run Code Online (Sandbox Code Playgroud)
最终编辑
正如我从一开始就怀疑它肯定是来自一个损坏的PHP安装和它的扩展.代码本身没有问题,但我猜它使用了错误安装的一些部分.可以添加更多,但由于我没有找到确切的原因和它的解决方案,但设法让它再次工作,我感谢大家指导我的解决方案.
小智 1
在查看您的代码时,我不相信您有任何错误。
话虽如此,您提到您的许多网站现在都遇到问题。我想知道您现在是否受到恶意机器人的攻击,这些机器人可能会导致类似于此 [PHP 错误报告][1]https://bugs.php.net/bug.php?id=59748 上的错误。 [1]:.
我会查看您的日志,看看这些网站上的流量是否发生变化,以开始利用此问题。
| 归档时间: |
|
| 查看次数: |
1019 次 |
| 最近记录: |