PHP的unixODBC阿帕奇段错误 [英] PHP unixODBC Apache Segfault
问题描述
我可以从命令行就好运行我的脚本:PHP test.php的与它连接,返回我的简单查询,然后从Oracle断开连接。当我运行:
I can run my script just fine from the command line: php test.php and it connects, returns my simple query and then disconnects from oracle. when I run:
isql -v dsn uname pw
它连接,我可以查询也是如此。问题是,当我运行在浏览器脚本,我得到一个美妙的500错误和段错误在我的日志文件present。现在,Apache不编译调试(这是讨厌)。我很想不必重新安装apache的调试。
it connects and I can query as well. The problem is when I run the script from the browser, I get a wonderful 500 error and a segfault as a present in my log files. Now apache is not compiled for debugging (which is annoying). I would love to not have to reinstall apache with debugging.
我使用:
PHP的:
I am using: PHP:
PHP 5.3.6 (cli) (built: Mar 17 2011 20:56:13)
Copyright (c) 1997-2011 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies
with eAccelerator v0.9.6.1, Copyright (c) 2004-2010 eAccelerator, by eAccelerator
阿帕奇:
Server version: Apache/2.2.17 (Unix)
Server built: Oct 27 2010 10:04:21
Server's Module Magic Number: 20051115:25
Server loaded: APR 1.4.5, APR-Util 1.3.12
Compiled using: APR 1.3.9, APR-Util 1.3.9
Architecture: 64-bit
Oracle客户端:
Oracle Client:
client64, both sdk and instant client
Linux内核:
Linux Kernel:
2.6.35.13-91.fc14.x86_64
的unixODBC:
unixODBC.x86_64 2.2.14-12.fc14(从YUM)
unixODBC: unixODBC.x86_64 2.2.14-12.fc14 (from yum)
我甚至不能运行PHP高级调试或记录因为Apache / PHP刚刚退出有一次我去在浏览器的URL。
I cannot even run advanced debugging or logging on php because apache/php just quits once I go to the URL in the browser.
我目前想看看我是否能运行:
I'm currently trying to see if I can run:
<?php exec('php test.php'); ?>
要看到,如果我能,暂时,解决这个问题。我将很乐意分享任何东西如果需要的话。
to see if I can, for the time being, get around this. I will gladly share anything else if need be.
推荐答案
我猜想,它几乎可以肯定(假设你是一个64位平台上),由于您使用的是正在构建具有的sizeof(SQLLEN)中的unixODBC == 4,这是在2.2.x默认,和sizeof(SQLLEN)== 8这是什么2.3.x版本与建立
I would guess that its almost certainly (given you are on a 64 bit platform) due to the unixODBC you are using being build with sizeof( SQLLEN ) == 4, which was the default for 2.2.x, and sizeof( SQLLEN ) == 8 which is what 2.3.x builds with.
这篇关于PHP的unixODBC阿帕奇段错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!