【发布时间】:2017-06-05 19:29:36
【问题描述】:
简短:我正在尝试让 PHP 在与 ASP.Net Core 站点相同的站点中运行。
Long:我重新编写了我的网站,以便从 WebForms 网站迁移到 ASP.Net 核心 1.1 网站。我的旧网站同时运行 ASP.NET 和 PHP(我在一个子文件夹下运行了一个 WordPress 实例,该子文件夹用于将博客文章写入 sqlite 数据库,本质上将其用作内容管理部分,并且效果很好4 年)。
我曾希望在 Azure 上使用 ASP.Net Core 做同样的事情,但遇到了问题。我已经发布了该站点,.Net 端启动并运行。但是 PHP 不再起作用(似乎这些文件可能通过 ASP.Net Core 路由?..
在 Azure 中,我使用的是 .Net Framework 4.6 和 PHP 5.6。 “index.php”被设置为默认文档之一。我尝试设置到 php-cgi.exe 的处理程序映射。我在 EventLog 中发现了以下内容,这让我认为文件没有被路由到 PHP:
<Event>
<System>
<Provider Name="IIS AspNetCore Module"/>
<EventID>1000</EventID>
<Level>0</Level>
<Task>0</Task>
<Keywords>Keywords</Keywords>
<TimeCreated SystemTime="2017-06-05T18:36:25Z"/>
<EventRecordID>426103812</EventRecordID>
<Channel>Application</Channel>
<Computer>RD0003FF4207D0</Computer>
<Security/>
</System>
<EventData>
<Data>Application 'MACHINE/WEBROOT/APPHOST/YOURSITE/BLOG' with physical root 'D:\home\site\wordpress\' failed to start process with commandline '".\yoursite.exe" ', ErrorCode = '0x80070002 : 0.</Data>
</EventData>
</Event>
注意事项:
- 我试图将 WordPress 文件从已发布的内容中提取出来,并将其设为虚拟目录(这会导致在引用 PHP 内容时出现 HTTP 错误 502.5 Process Failure)。
- 我将 WordPress 文件作为子文件夹保留在我的 ASP.Net Core 站点中并重新发布,这些文件似乎通过 ASP.Net Core 路由(当访问 PHP 页面时将我带到 404.. 虽然静态该文件夹中的文件可以参考)。
如何在同一个站点中运行 ASP.Net Core 和 PHP?
【问题讨论】:
标签: php azure asp.net-core