4

我是 Web 开发的新手,请耐心等待,问题是我正在编写一个主要用 PHP 编写的 Web 应用程序。尽管一半的代码已经由其他开发人员用 Java 编写,但我的托管服务器不支持 java。任何人都可以帮助我解决我的选择,我已经用谷歌搜索过,我已经看到一个 php to java bridge 作为一种可能的解决方案。问题是我不能这样做,因为我目前无法托管 java servlet。如果这是我唯一的选择,我将不得不使用不同的托管公司,尽管这不是我的首选解决方案。

我不知道 Java - 是否可以将 java 文件编译成 .class 文件并从我的 php 代码中引用它,我的 Apache 服务器是否可以托管 java .class 文件。

简而言之,我需要托管 Java 和 php 代码以及从我的 php 代码中引用 Java 代码,我可以这样做还是必须在 php 中重写 Java 代码才能使其工作。

4

5 回答 5

5

1) 大多数 Web 托管站点都为 JSP/Servlet(例如 Tomcat)提供了一些服务。即使是最便宜的网站托管服务。所以寻找另一个供应商不一定是一个坏主意。

2)Java代码不能直接和PHP代码对话,PHP代码也不能直接和Java代码对话。

3) 但是:可以将同一个 Web 服务器配置为运行 PHP/Apache 和 Tomcat。例如:

4) 同一台服务器可以很容易地同时支持 PHP/Apache 和 Tomcat 作为单独的服务。换句话说,同一台主机(例如 www.myserver.com)可以轻松运行 Apache/PHP(例如http://www.myserver.com:80)和 Tomcat(例如http://www.myserver.com:8080 ) ) 同时。这是一个很常见的配置。

5)不要任何“翻译”。即使您找到一个声称能够做到这一点的工具,从 PHP 转换为 Java,或从 Java 转换为 PHP,对我来说可能会带来更多的麻烦而不是它的价值。

6) 除非有很多代码,否则我也不会真正考虑 Web 服务(或 Ajax)。

7) 只需找到支持 Apache/PHP、Tomcat 和您选择的数据库的提供商即可;在您觉得最舒服的任何一个上创建“主页”,并修改您的 PHP 和 JSP 页面以依赖 CSS 以确保两者具有一致的外观和感觉。

这种方法是最简单的……它可能就是您所需要的!

祝你好运

于 2012-12-16T07:34:28.257 回答
0

你不需要任何桥梁。但是您可以将 Java 应用程序用作服务......只需从您的 PHP 向它发出请求(可能使用 AJAX 调用),然后在返回时显示响应。

这是我能提供的最简单的解决方案。

在您提出更多问题之前,我建议您在此处阅读有关 AJAX和 Web 服务的信息。:-)

jQuery Ajax 具有 dataType 属性,您可以通过该属性清楚地指定您希望如何接收响应,而 HTML 是选项之一。但他甚至不必对此进行调整,因为 Ajax 可以智能地猜测数据的性质并按预期返回。此方法中可能存在的唯一问题是它可能会引入一些延迟。

您可以通过阅读此文档了解如何使用 jQuery/Ajax 解决此问题,并在此处阅读有关选项的信息。

如果您愿意,请阅读我对其他答案的评论...

于 2012-12-15T23:59:55.803 回答
0

关于(甚至免费)Java 和 PHP 托管,请尝试Red Hat 的 OpenShift

关于 PHP 与 Java 交互,反之亦然 - 有多种方式:

此外,还有Caucho Quercus,用 Java 解释的 PHP。但这是一个死项目AFAIK

于 2012-12-16T07:22:18.710 回答
0

在不知道您的 Java 和 PHP 是如何编写的情况下,AJAX 可能是您最好的选择。但是可以使用 Quercus 来执行你的 PHP 代码和调用你的 Java 例程,所有这些都在同一个 Java 服务器上。当然,这需要在支持 servlet 的服务器上运行。

@Ondra Žižka,Quercus 还活着,非常感谢 :)。

于 2012-12-21T21:16:21.160 回答
0

最近我们使用 mod_jk 用于 Apache(用于 PHP)和 JBOSS 用于 JAVA。因此,基础服务器将是 Apache,请求从那里重定向到 JBOSS。 这可能对你有帮助

于 2013-02-12T17:13:24.330 回答