有没有办法将ASP.NET与PHP集成?

3
我知道ASP.NET应用程序可以通过fastCGI与PHP应用程序在IIS上一起运行,但是否有一种方式将两个应用程序集成在一起,以便我可以同时利用来自PHP和ASP.NET的代码。
在我的研究中,我发现了一个称为Phalanger的第三方工具,它将php代码转换为MSIL并与.net应用程序一起运行,但问题是它仍处于beta版本,并且sessions_start()函数无法正常运行。还有其他好的想法吗?如果有,请告诉我。

我不明白为什么不能在同一台机器上同时运行 PHP 在 Apache 上和 ASP.NET 在 IIS 上,除非有些关于 IIS 的东西我不了解。我曾经在同一端口上使用不同的上下文,在同一台机器上运行 Apache 和 JBoss,其中 JBoss 运行在 webapp 上下文中,而 Apache 运行在 ROOT 上下文中。 - maple_shaft
我可以运行它。但那不是我想要的,我想将 PHP 应用程序与 ASP.NET 集成。有可能吗? - Adeel
你想要集成哪个部分?集成会做什么?我曾经将不同的.NET和Classic ASP应用程序池组合在一起。我创建了一个“桥梁”,使用HTML form元素在池之间进行通信,相互发布。 - Steven Ryssaert
5
“integrate”具体指什么?这需要更多的细节。你想在哪里运行什么?你只想共享会话还是更多? - Pekka
4
在同一台IIS服务器上运行php网站和asp网站没有问题,只需安装php并在适当的位置使用php和asp扩展即可。如果想要在同一文件中编写php和asp代码,则更为复杂(且荒谬),可能是不可能实现的,而且绝对不是好主意。您需要详细解释您尝试做什么。 - Toby Allen
我需要共享会话。我想将OScommerce(购物车应用)网站与我们现有的ASP.NET网站集成,其中ASP.NET具有产品详细信息,但购物车系统和注册在PHP侧。 - Adeel
1个回答

0

听起来你想要一个包含两种语言并排运行的单一文档。

我不认为使用php.net和Microsoft的标准资源可以实现这一点。正如你所提到的,可能有工具可以转换代码,但成功率可能会有所不同(我无法提供任何建议)。

在IIS中,您需要针对文件扩展名配置应用程序扩展名。例如,.ASPX针对aspnet_isapi.dll或.PHP针对php5_isapi.dll。

您需要在两个ISAPI扩展名中都有相同的应用程序扩展名,而IIS不允许您这样做。

至于Apache,由于它是基于文本的,显然允许设置这一点,但可能无法按预期工作。

即使这样能够工作,我也认为这是一个坏主意,因为您很可能会在以后遇到其他问题。

我建议您查看一个使用ASP.NET构建的购物车应用程序,而不是尝试将两种不通常用于此功能的不同语言合并在一起。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接