Tomcat下无法运行PHP脚本

2024-04-21

我正在使用 Tomcat 6。我已经安装了 PHP 并尝试使用 PHP/JavaBridge 在 Tomcat 中运行 PHP。我已在 Tomcat 的 webapps 目录中部署了 JavaBridge.war。当运行任何 PHP 脚本时,我会收到以下错误。请帮助,我感谢您的帮助。

这就是我配置 PHP 的方式:

./configure --with-mime-magic --with-config-file-path=/usr/local/Zend/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-libxml-dir=/usr --with-mhash=/usr/local --with-bz2=/usr --with-curl=/usr --with-gettext=/usr --with-mysql=/usr/local/mysql --with-mcrypt=/usr/local --启用魔术引号 --启用 bcmath --启用日历 --启用 ftp --启用套接字 --启用-wddx --启用-mbstring --启用压缩 --启用 exif --with-gd=/usr --with-freetype-dir=/usr --with-jpeg-dir=/usr --with-png-dir=/usr --启用-gd-native-ttf --启用fastcgi --启用强制cgi重定向

Tomcat的错误信息如下:

HTTP 状态 500 -

类型异常报告

message

描述 服务器遇到内部错误 (),导致无法执行 它从满足这个请求。

例外

javax.servlet.ServletException: php.java.bridge.http.FCGIConnectException:无法连接到服务器 php.java.servlet.fastcgi.FastCGIServlet.init(FastCGIServlet.java:133) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:861) org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579) org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1584) java.lang.Thread.run(Thread.java:662)根本原因

php.java.bridge.http.FCGIConnectException:无法连接到服务器 php.java.bridge.http.SocketChannelFactory.test(SocketChannelFactory.java:58) php.java.servlet.fastcgi.FastCGIServlet.init(FastCGIServlet.java:131) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:861) org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579) org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1584) java.lang.Thread.run(Thread.java:662)根本原因

java.io.IOException:java.net.ConnectException:连接被拒绝 php.java.bridge.http.FCGIConnectException.(FCGIConnectException.java:37) php.java.bridge.http.SocketChannelFactory.test(SocketChannelFactory.java:58) php.java.servlet.fastcgi.FastCGIServlet.init(FastCGIServlet.java:131) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:861) org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579) org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1584) java.lang.Thread.run(Thread.java:662)根本原因

java.io.IOException:找不到 PHP。请安装 php-cgi。 PHP测试 命令是:[php-cgi,-v] php.java.bridge.Util$Process.start(Util.java:1145) php.java.servlet.fastcgi.FCGIProcess.start(FCGIProcess.java:68) php.java.bridge.http.SocketChannelFactory.doBind(SocketChannelFactory.java:125) php.java.bridge.http.FCGIConnectionFactory.runFcgi(FCGIConnectionFactory.java:88) php.java.bridge.http.FCGIConnectionFactory$1.run(FCGIConnectionFactory.java:109) 注意 根本原因的完整堆栈跟踪可在 Apache Tomcat/6.0.29 日志。

阿帕奇汤姆猫/6.0.29


我也犯了和你一样的错误 您在这里缺少的关键点是:

PHP CLI(命令行界面)需要setup使用 java-php 桥

正如您声称已经安装了 PHP(任何手段 XAMPP/WAMP)

请执行以下步骤:

  • 将 PHP 添加到 PATH 环境变量 -Help https://stackoverflow.com/a/22607578/2584794
  • 通过运行CMD>确认配置

    php-cgi -v
    
  • 通过上面的命令你会看到PHP版本信息
  • 重启Tomcat

PHP/JavaBridge 应该在此之后开始工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Tomcat下无法运行PHP脚本 的相关文章

  • regex php - 查找 div 中具有特定 ID 的内容

    我确信这是一个简单的问题 尽管我在谷歌上进行了如此多的搜索和搜索 但我似乎无法弄清楚这有什么问题 我在此页面上的其他区域使用类似的表达式来准确返回我想要的内容 但是 我无法让这个特定的位返回我想要的东西 所以也许有人可以帮助我 我有一个带有
  • 如何在 PHP 中替换/转义 U+2028 或 U+2029 字符以阻止我的 JSONP API 崩溃

    好的 我正在运行一个公共 JSONP API 数据由我的 PHP 服务器提供 我刚刚读了这篇文章 JSON 不是的 JavaScript 子集 作者 Magnus Holm 2011 年 5 月 http timelessrepo com
  • 如何在codeigniter中引用数据库连接?

    如何在 CodeIgniter 数据库处理程序对象中手动调用 PHP 数据库函数 如何检索连接 dbc 或者调用类似的函数mysql real escape string dbc variable 您可以调用任何 mysql 本机函数并访问
  • php postgresql pdo 从标准输入复制

    COPY table name field1 field2 field3 FROM STDIN CSV 1 2 q w 3 4 a s 5 6 d 如何通过 PDO 执行此查询 Update 问题是 PDO 驱动程序将此查询作为语句执行 例
  • 从 PHP 执行 SQL Server 存储过程

    我尝试从 PHP 调用 SQL Server 存储过程 这是我的存储过程 CREATE procedure dbo tester id NVARCHAR MAX AS BEGIN DECLARE tab TABLE myxml XML IN
  • PHP中如何替换字符串?

    我有一个变量 其中包含如下所示的字符串 p The post a href http zed1 com journalized archives 2012 03 11 wordpress 3 for business bloggers Wo
  • 对需要发送标头的项目进行单元测试

    我目前正在与 PHPUnit 合作 尝试在我正在编写的内容的同时开发测试 但是 我目前正在编写会话管理器 并且在这样做时遇到了问题 Session 处理类的构造函数是 private function construct if header
  • php简单xml如何读取具有不同子节点级别的多个节点

    我有一个 xml 文件 其中包含不同的命名节点和多级子节点 每个节点之间都不同 我应该如何访问数据 需要很多嵌套的for循环吗 以下是 xml 代码示例
  • PHP: $arr['key'] 上的 is_array 不存在 'key'

    我的一所大学似乎在我编写的代码中存在 未定义索引 错误 我的这段代码如下所示 if is array arr key 我的目的是检查 arr 是否有一个名为 key 的键 以及该键的值是否是数组本身 我应该这样做吗 if isset arr
  • MPDF 未定义索引错误

    我正在使用 MPDF 库将 HTML 转换为 PDF 这是我的代码 HTML HTML CONTENT GOES HERE HTML STRING MPDF gt WriteHTML html Converting MPDF gt Outp
  • 在 PHP 中计算 Cookie 大小

    我想使用 php 在服务器端读取 cookie 并计算其长度 但找不到任何直接方法来执行此操作 那么如何实现这个任务呢 那这个呢 setcookie user Dino babu kannampuzha time 3600 if isset
  • PHP 静态变量用双引号引起来

    如何让 PHP 计算双引号中的静态变量 我想做这样的事情 log self CLASS METHOD entering 我尝试过各种 组合来获取变量值self CLASS 但没有任何效果 我目前已经解决了字符串连接问题 但输入起来很痛苦 l
  • 使用 shell_exec Powershell 输出到 PHP 变量

    我有一个 powershell 脚本 它输出视频文件持续时间 运行这个脚本给了我预期的结果 Folder C my path to folder File sample1 1280 720 mp4 LengthColumn 27 objSh
  • Laravel 雄辩的 withCount() 应该比 with() 慢

    所以我问这个的原因是在我当前的应用程序中withCount 与仅通过以下方式获取关系的所有数据相比 响应时间几乎增加了三倍with 并只是从前端获取长度 javascript 我认为使用的要点withCount 是为了加快查询速度 但也许我
  • 如何在 MySQL 中使用 INET_ATON 进行通配符搜索 IP 地址?

    我发现这个方法可以使用 INET ATON 将 IP 地址作为整数存储在 MySQL 数据库中 https stackoverflow com a 5133610 4491952 https stackoverflow com a 5133
  • mysqli_connect(): (HY000/2002): 无法建立连接,因为目标机器主动拒绝

    我知道有很多这样的问题 但我没有找到任何解决方案 我尝试过的事情 检查防火墙 重新启动我的电脑和 Apache 服务器 重新启动MYSQL 检查了我的代码 尝试了我所知道的和在互联网上找到的一切 这是我的代码
  • Curl 和 Php 5.3.3 中的 SSL 连接错误

    我的网站自 3 年来一直运行良好 代码如下 现在突然从 2 天开始出现以下错误 SSL 连接错误 在 Curl error 中 下面是我的代码
  • CodeIgniter:使用多维 POST 数据验证表单

    所以框架是CodeIgniter 2 0 2 我有一个表单 其中包含与数据库中的行相对应的字段组 字段名称的格式为 opt 0 foo opt 0 bar opt 1 foo opt 1 bar etc 索引 1 2等 并不对应于数据库中的
  • 日期函数的奇怪行为

    我今天在 StackOverflow 上遇到了这个问题 但没有得到答案 我的问题是 echo date Y m d strtotime 2012 september 09 output 2012 09 01 echo date Y m d
  • 在 Laravel 视图中使用 CSS?

    我刚刚开始学习 Laravel 并且可以掌握控制器和路由的基础知识 我的操作系统是 Mac OS X Lion 它位于 MAMP 服务器上 我的routes php代码 Route get function return View make

随机推荐

  • 以编程方式创建多个按钮:Android

    我知道这个问题之前已经被问过好几次了 但我无法解决我的问题 我正在尝试以编程方式添加多个按钮 我希望按钮水平对齐 但是 只显示一个按钮 到目前为止我尝试过的是 private void locationSort RelativeLayout
  • 如何使用 FileUpload 向受 Azure AD 保护的 REST API 发出 REST API 发布请求

    我有以下 net WEB API Authorize public class TenantController ApiController public async Task
  • DataGridView 单元格类型

    我有带有复选框列的 datagridview 但我希望某些列单元格是文本框单元格 一列中是否可以有多种细胞类型 如果是 那么如何 有两种方法可以做到这一点 Cast a DataGridViewCell到存在的某种细胞类型 例如 转换一个D
  • 从 PyPI 安装我的 sdist 会将文件放在意外的位置

    我的问题是 当我将 Python 包上传到 PyPI 然后使用 pip 从那里安装它时 我的应用程序会崩溃 因为它将我的文件安装到与我简单地从本地 sdist 安装完全相同的包时完全不同的位置 从本地 sdist 安装会将文件放在我的系统上
  • Unity3d 和 System.Xml.Linq

    因此 即使 Unity Editor Data Mono lib mono 2 0 System Xml Linq dll 文件存在 也会执行以下操作 using System Xml Linq 生成以下错误 命名空间 System Xml
  • 异步方法无法返回具有可访问的 GetAwaiter 方法的任何类型

    It says here https learn microsoft com en us dotnet csharp programming guide concepts async async return types 异步方法可以具有以
  • Python 列表到 pandas 数据框

    我有一个遵循以下格式的列表 a date name 10150425010245 name1 10150425020245 name2 我正在尝试将其转换为 Pandas df newlist for item in a newlist a
  • 减少单元格中/chr(10) 的换行数

    我有一张 Excel 工作表 其中的单元格具有不同数量的换行符 我想减少它 以便每个新行之间只有一个换行符 例如 HELLO WORLD GOODBYE 将修改为 HELLO WORLD GOODBYE 我已经为此绞尽脑汁好几个小时了 并想
  • 日期格式化 C#

    我在将此日期格式转换为另一种格式时遇到问题 我希望这里有人能够帮助我 这是我的代码 string fromFormat ddd dd MM yyyy HH mm ss zzz string toFormat yyyy MM dd DateT
  • 删除 DataFrame 列中仅出现一次的值

    我有一个列中具有不同值的数据框x 我想删除列中仅出现一次的值 So this x 1 10 2 30 3 30 4 40 5 40 6 50 应该变成这样 x 2 30 3 30 4 40 5 40 我想知道是否有办法做到这一点 您可以通过
  • Visual Studio 链接文件目录结构

    我有一个项目的两个版本 一种用于 Silverlight 另一种用于 NET SL 项目拥有绝大多数代码库 我想将 SL 项目中的所有文件作为链接文件全局添加到 NET 版本中 我已经在 NET 版本的 csproj 文件中成功地做到了这一
  • 变量运算符可以吗?

    有没有办法执行类似于以下任一操作 var1 10 var2 20 var operator lt console log var1 operator var2 returns true OR var1 10 var2 20 var oper
  • 如何将外部图像添加到 Github 帖子

    我想将托管在外部源上的图像添加到 Github 但当我确认将其发布时 我只看到链接 Image https ibb co kOnOrb 我使用这种格式 但它不起作用 我单击创建的链接并看到消息Non Image content type r
  • 在 lambda 函数中使用 auto self(shared_from_this()) 变量的原因是什么?

    我阅读了 boost asio http 服务器示例代码 请参阅http www boost org doc libs 1 54 0 doc html boost asio example cpp11 http server connect
  • JavaScript 多个间隔和clearInterval

    我有一个小程序 当你点击一个 条目 时 编辑模式被打开 并且该条目是为其他人锁定的编辑 每10秒发送一个ajax请求来更新表中的时间戳 entry edit click function code loopLockingVar setInt
  • ASP.NET MVC 4:更改 Javascript 中隐藏字段的值

    我有一个隐藏布尔值 field Html HiddenFor x gt x IsTurkey 在 jQuery 脚本中我尝试更改它 Html IdFor x gt x IsTurkey val False 但回发后 IsTurkey 没有改
  • 如何在GDB中运行记录指令历史记录和函数调用历史记录?

    编辑 根据下面的第一个答案 当前的 技巧 似乎正在使用 Atom 处理器 但我希望一些 gdb 专家可以回答这是否是一个基本限制 或者路线图上是否添加了对其他处理器的支持 反向执行似乎在我的环境中起作用 我可以反向继续 查看合理的记录日志
  • 将变量临时存储在一系列管道 dplyr 中

    有没有办法暂停一系列管道来存储稍后可以在管道序列中使用的临时变量 我找到了这个question https stackoverflow com questions 40369832 assign intermediate output to
  • Hibernate 的“未保存值映射不正确”是什么意思?

    有一个著名的例外 org hibernate StaleObjectStateException 行已更新或删除 另一笔交易 或未保存值映射不正确 my Entity 123456 当 行被另一个事务更新或删除 时 这是一种非常熟悉的情况
  • Tomcat下无法运行PHP脚本

    我正在使用 Tomcat 6 我已经安装了 PHP 并尝试使用 PHP JavaBridge 在 Tomcat 中运行 PHP 我已在 Tomcat 的 webapps 目录中部署了 JavaBridge war 当运行任何 PHP 脚本时