我在MOS Doc ID 1945619.1上读到,从12.1.3 Oracle HTTP Server(OHS)开始,mod_plsql功能已被弃用,不会包含在12.2 Oracle HTTP Server中。
对于未来,Oracle建议迁移到Oracle REST数据服务(以前称为Oracle APEX侦听器)作为mod_plsql的替代方案。
我们的商店有很多mod_plsql应用程序(即使用HTP / HTF程序包编写的应用程序)。由于我对Oracle REST数据服务一无所知,因此我会问您是否可以在不更改代码的情况下将旧应用程序迁移到此新产品。
谢谢。
亲切的问候,克里斯蒂安
答案 0 :(得分:2)
我的商店与你的情况差不多。 我们还有一些非常大的基于mod_plsql / htp的应用程序,并且必须在某些时候迁移到Oracle REST数据服务。
我们已经花了很多时间测试不同的ORDS配置,我们的总体结论是:
当使用非APEX(纯HTF / HTP)应用程序时,我们目前面临的最大问题(实际上阻止我们切换到ORDS)是一些限制。 我们已经提交了一些SR,因为ORDS中的某些功能(例如文件上传和下载API)仅在运行APEX应用程序时可用。
答案 1 :(得分:2)
https://oss.oracle.com/projects/mod_owa/dist/documentation/modowa.htm
我在生产环境中使用它,我强烈推荐它。它非常快,坚如磐石。
您需要进行一些编译,但值得的是能够使用Apache 2.4和mod_plsql。
步骤:
使用enable-so,make和make install进行配置
./ configure --enable-so --with-apr = / usr / local / apr --with-apr-util = / usr / local / apr
下载mod_owa +解压缩
创建空目录。复制" apache24"中的所有文件进入新文件夹。复制" src"中的所有文件到新文件夹
输入新文件夹并编辑modowa.mk< - 重要添加$ ORACLE_HOME,编辑APACHE_TOP
将mod_owa.so复制到apache的模块
在Apache的conf / dir中添加modowa.conf。
示例modowa.conf:
loadModule owa_module modules/mod_owa.so
<Location /pls>
Options None
SetHandler owa_handler
OwaUserid user/pass
OwaNLS AMERICAN_AMERICA.AL32UTF8
OwaPool 100
OwaStart "package.procedure"
OwaDocProc "wwv_flow_file_mgr.process_download"
OwaDocTable photos_upload BLOB_CONTENT
OwaUploadMax 50M
OwaCharset "utf8"
order deny,allow
allow from all
OwaReset LAZY
OwaCharsize 4
OwaFlex package.procedure
OwaHttp REST
</Location>
在启动httpd ORACLE_HOME之前,需要设置NLS_LANG(如果是本地,也需要设置ORACLE_SID)。它需要使用libclntsh.so访问Oracle Home。 (Oracle客户端会这样做)。
我只是在/etc/ld.so.conf.d(+ ldconfig)下添加了oracle.conf(oracle home / lib的一行完整路径)
真正的可扩展性和更清洁的设置然后OHS。
答案 2 :(得分:1)
克服的最大障碍是建立Oracle Rest Services(ORS)并确保其安全。完成此操作后,您的Web工具包应用程序将起作用。该网址可能会略有变化,因此如果您使用完整路径引用网址而不是相对路径,则可能需要修改代码。
我不确定ORS在mod_rewrite,mod_proxy,具有多个ip地址的虚拟主机等领域是否像Apache一样强大......