Quercus是Java实现的PHP引擎,用于在Tomcat或Resin中运行PHP,适用于已有Java项目需集成少量PHP的场景,不支持PHP 7+且已停止维护,现代开发不推荐使用。

Quercus 并不是 PHP 的框架,而是 Caucho Technology 开发的一个 Java 实现的 PHP 引擎,用于在 Java 应用服务器(如 Tomcat、Resin)中运行 PHP 代码。它不依赖 PHP 解释器,而是将 PHP 脚本编译为 Java 字节码执行。因此,“安装 Quercus”实际是指在 Java 环境中集成 Quercus,而非像 Laravel 或 ThinkPHP 那样通过 Composer 安装 PHP 框架。
确认使用场景是否匹配
Quercus 适用于以下情况:
- 已有 Java Web 项目(如基于 Spring 或 Servlet),希望嵌入少量 PHP 脚本(例如旧 PHP 模块迁移过渡)
- 运行在 Resin 应用服务器上(Quercus 是 Resin 的默认 PHP 引擎)
- 需要 PHP 与 Java 对象深度互调(例如直接 new Java 类、调用 JNDI 或 JDBC)
如果你只是想开发标准 PHP 应用,不应选择 Quercus —— 它已多年未更新(最后稳定版 quercus-4.0.42 发布于 2017 年),不支持 PHP 7+ 语法(如 null 合并运算符、严格类型、匿名类等),且无社区维护。
在 Tomcat 中手动集成 Quercus(以 quercus-4.0.42 为例)
步骤如下(需 JDK 8 + Tomcat 8/9):
SmartB2B 是一款基于PHP、MySQL、Smarty的B2B行业电子商务网站管理系统,系统提供了供求模型、企业模型、产品模型、人才招聘模型、资讯模型等模块,适用于想在行业里取得领先地位的企业快速假设B2B网站,可以运行于Linux与Windows等多重服务器环境,安装方便,使用灵活。 系统使用当前流行的PHP语言开发,以MySQL为数据库,采用B/S架构,MVC模式开发。融入了模型化、模板
立即学习“PHP免费学习笔记(深入)”;
- 下载 quercus-4.0.42.war(从 Caucho 存档或 Maven 仓库获取)
- 将 WAR 包放入
$TOMCAT_HOME/webapps/,启动 Tomcat 自动解压部署 - 或解压后修改
WEB-INF/web.xml,确保 servlet 映射包含*.php - 把
quercus.jar和依赖(如resin-util.jar)放入WEB-INF/lib/ - 在
WEB-INF/resin-web.xml中启用 PHP 支持(若使用 Resin 则无需此步)
替代建议:现代方案更可靠
当前几乎不再推荐新项目使用 Quercus。可考虑:
- 纯 PHP 环境:用 Nginx + PHP-FPM 或 Apache + mod_php,搭配 Composer 管理框架(Laravel、Symfony、Hyperf)
- Java 主站 + PHP 微服务:将 PHP 模块拆为独立 HTTP 接口(如用 Slim 或 Lumen),Java 侧通过 REST 调用
-
脚本级互通:用 Java 执行外部 PHP 进程(
Runtime.exec()),或通过消息队列解耦
基本上就这些。Quercus 是特定历史条件下的技术方案,如今已属于“兼容性工具”范畴,不复杂但容易忽略其局限性。










