首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP unixODBC Apache段错误

PHP unixODBC Apache段错误
EN

Stack Overflow用户
提问于 2011-08-09 23:46:23
回答 1查看 896关注 0票数 2

我可以从命令行很好地运行我的脚本: php test.php,它连接,返回我的简单查询,然后断开与oracle的连接。当我运行时:

代码语言:javascript
复制
isql -v dsn uname pw

它可以连接,我也可以查询。问题是,当我从浏览器运行脚本时,我在日志文件中得到了一个奇妙的500错误和一个segfault。现在apache不是为调试而编译的(这很烦人)。我希望不用在调试时重新安装apache。

我使用的是: PHP:

代码语言:javascript
复制
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

Apache:

代码语言:javascript
复制
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客户端:

代码语言:javascript
复制
client64, both sdk and instant client

Linux内核:

代码语言:javascript
复制
2.6.35.13-91.fc14.x86_64

unixODBC: unixODBC.x86_64 2.2.14-12.fc14 (来自yum)

我甚至不能在php上运行高级调试或登录,因为apache/php在我转到浏览器中的URL时就退出了。

我现在正在试着看我是否可以运行:

代码语言:javascript
复制
<?php exec('php test.php'); ?>

看看我能不能暂时绕过这个问题。如果需要的话,我很乐意分享任何其他的东西。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-17 23:44:14

我猜这几乎是肯定的(假设你是在64位平台上),因为你正在使用的unixODBC是用sizeof( SQLLEN ) == 4和sizeof( SQLLEN ) == 8构建的,sizeof(SQLLEN)==4是2.2.x的默认值。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6998984

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档