Apache上部署Pro*c常见的一个错误

原创 2003年10月25日 22:33:00

Apache上部署Pro*c常见的一个错误

在Apache上部署Pro*c,经常会出现服务器500错误.最近测试Linux上的Oracle iAS,
遇到问题不少,在这里把解决500错误的过程和大家大致描述一下,希望对大家能有所帮助.

操作系统:RedHat AdvanceServer 2.1
数据库: Oracle 8.1.7.4
Apache: 1.3.12

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
情况1:
假设我们请求的连接如下:

http://192.168.0.116:7777/cgi-bin/test

浏览器得到的错误信息如下:

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator,
Fenng@ITPub.net and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

一般的,管理员都会检查Apache的Logs目录下的error.log文件.检查该文件,提示信息如下:

test: error while loading shared libraries: libclntsh.so.8.0: cannot open shared object file: No such file or directory

别管那么多,如果有Metalink帐号的话,先去看看,查了几个帖子,
提示说Apache的环境变量不正确.有些语焉不详.

既然提示信息是找不到libclntsh.so.8.0文件,首先看看系统是不是有这个库文件:

[oracle@Linux lib]$ pwd
/u/app/oracle/product/8.1.7/lib
[oracle@Linux lib]$ ls -l libcln*
lrwxrwxrwx    1 oracle   root           16 Oct 23 13:56 libclntsh.so -> libclntsh.so.8.0
-rwsrwxr-x    1 oracle   root      6285134 Oct 23 13:56 libclntsh.so.8.0
-rwsrwxr-x    1 oracle   root      8689756 Oct 23 13:57 libclntst8.a

哦,此文件存在.

接下来检查环境变量:

[oracle@Linux lib]$ set | grep LIB
LD_LIBRARY_PATH=/u/app/oracle/product/ias/lib:/lib:/usr/lib:/usr/openwin/lib

Ok.问题定位:用户的环境变量不正确.

解释:原来系统中还安装过9ias ,管理员一时疏忽,环境变量没有调整好.

修改后,得到解决.

(哇,你这也太简单了,没劲)OK,看下一个情形.

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

情况二:

系统环境:多加了Oracle 9iAS ,其它同上.
Apache是用iAS 默认的安装.

同样出现500错误.

有了上次的经验,逐一的查找.....

居然...不管用

用户环境变量正确,在Shell下执行test程序,可以执行,并输出正确结果!

上网,查找Google,Metalink,得到的信息大致如下:Apache 的环境变量不正确

建议在Httpd.conf中加入

SetEnv ORACLE_HOME 'your path'
SetEnv ORACLE_SID  'your  sid'
SetEnv LD_LIBRARY_PATH 'your lib path'

尝试之后,没有一点作用.

看来,解决的方法不对路.

从头分析:登录到oracle用户下,此时环境变量正确的,然后启动/停止Apache,用的是 apachectl start/stop命令.
这个apachectl命令会不会有问题??

$more apachectl

找到了这样一段:
if [ -z "$LD_LIBRARY_PATH" ]
then
        LD_LIBRARY_PATH=/u/app/oracle/product/ias/lib ; export LD_LIBRARY_PATH
else
        LD_LIBRARY_PATH=/u/app/oracle/product/ias/lib:${LD_LIBRARY_PATH} ; export LD_LIBRARY_PATH
fi

又是iAS惹的祸!修改之后.问题解决.

老生常谈的建议:在操作的过程中,对配置文件修改的时候,事先做个备份是个好习惯。否则,恢复不到初始状态也很头疼的哦。

附,系统的一些配置信息大致如下:

[oracle@Linux bin]$ uname -a
Linux Linux 2.4.9-e.3 #1 Fri May 3 17:02:43 EDT 2002 i686 unknown
SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle8i Enterprise Edition Release 8.1.7.4.0 - Production
PL/SQL Release 8.1.7.4.0 - Production
CORE    8.1.7.0.0       Production
TNS for Linux: Version 8.1.7.4.0 - Production
NLSRTL Version 3.4.1.0.0 - Production

+++++++++++++++++++++++++++END++++++++++++++++++++++++++++++++

MacBook Pro 下vue项目开发环境搭建,安装和配置apache

最近公司在用vue+elementUi +java开发项目,刚开始想到的当然是tomcat,然后就各种查Mac安装tomcat的教程,终于发现人家Mac自身是带了apache的,可以直接用来搭建本地w...
  • tangdou5682
  • tangdou5682
  • 2017年11月08日 15:21
  • 170

Apache-web多项目部署简单流程

apache 整合web项目简单配置
  • wangbo54979
  • wangbo54979
  • 2016年06月27日 09:39
  • 3026

C语言 字符串常见问题总结

字符串的操作时C中非常常见的,但是稍不注意就会出现错误,而且这种错误往往时运行时才会崩溃(段错误),让你的程序很难调试。下面就说说常见的几种错误 1.为字符串指针赋值,后修改 char q[10] ...
  • WSRspirit
  • WSRspirit
  • 2015年04月26日 20:33
  • 708

C语言常见的出错信息

Ambiguous operators need parentheses  不明确的运算需要用括号括起  Ambiguous symbol ’xxx’  不明确的符号  Argument li...
  • sinat_26523761
  • sinat_26523761
  • 2016年11月03日 20:39
  • 242

如何整合Apache和Tomcat部署Web应用

原文地址:http://blog.csdn.net/gengv/article/details/5739438 从网上查了不少资料,想了解一下如何整合Apache和Tomcat,以便让Apa...
  • johnstrive
  • johnstrive
  • 2014年12月18日 22:54
  • 18105

关于apache的几个常见问题

一.安装apache的时候总是不成功,提示:failed to open the winnt service manager    原因:软件安装时与windows7的“用户账户控制”(UAC)...
  • tianyazaiheruan
  • tianyazaiheruan
  • 2013年12月28日 22:04
  • 2755

windows安装tomcat遇到问题及解决方案

Tomcat的下载地址:https://tomcat.apache.org/download-80.cgi 下载的安装包解压既可以。 具体配置方案请参考:http://jingyan.baidu.c...
  • u010149189
  • u010149189
  • 2016年05月19日 10:30
  • 1903

Django部署到Apache后出现的访问失败的问题

Django写一个web,运维给部署到Apache之后给的根目录是ip:port/es/  urls.py中如下配置 可以访问到login 但是像如下这种匹配就都匹配不上 ...
  • ggran2009
  • ggran2009
  • 2015年12月29日 18:10
  • 1167

在Linux下通过Pro*C语言访问Oracle(二)

Pro*C介绍 内嵌SQL 概要Pro*C语法 SQL预处理指令语句标号 宿主变量 基础指针结构数组指示器变量数据类型同等化 动态SQL事务错误处理 SQLCAWHENEVER语句 Demo...
  • suxinpingtao51
  • suxinpingtao51
  • 2013年09月16日 16:24
  • 2432

使用apache作为web服务器展示一个html文件

目标是使用apache作为服务器,展示一个html文件。 1)启动apache
  • v_xchen_v
  • v_xchen_v
  • 2017年02月22日 15:46
  • 2199
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Apache上部署Pro*c常见的一个错误
举报原因:
原因补充:

(最多只允许输入30个字)