Запуск ASP.Net Core и PHP в Azure

Коротко: я пытаюсь заставить PHP работать на том же сайте, что и сайт ASP.Net Core.

Долго: я переписал свой веб-сайт для миграции с сайта WebForms на сайт ASP.Net core 1.1. Мой старый сайт работал как на ASP.NET, так и на PHP (у меня был экземпляр WordPress, работающий в подпапке, которая использовалась для записи сообщений в блоге в базу данных sqlite, по сути, используя его как часть управления контентом, и он хорошо работал для этого на 4 года).

Я надеялся сделать то же самое с ASP.Net Core в Azure, но столкнулся с проблемами. Я опубликовал сайт, и .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 из опубликованного контента и сделать его виртуальным каталогом (это привело к ошибке HTTP 502.5 Ошибка процесса при ссылке на контент PHP).
  • Я оставил файлы WordPress в качестве подпапки на своем сайте ASP.Net Core и переиздал, они, похоже, перенаправляются через ASP.Net Core (и переходят на 404 при обращении к страницам PHP … хотя статические файлы в этом Ссылка на папку отлично).

Что мне нужно сделать, чтобы запустить ASP.Net Core и PHP на одном сайте?

1

Решение

Успешно решить, выполнив следующее.

Добавление файла web.config в каталог / blog для удаления обработчика aspNetCore

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<remove name="aspNetCore"/>
</handlers>
</system.webServer>
</configuration>
3

Другие решения

Я не эксперт ASP.Net Core, но я считаю, что виртуальный каталог — лучший выбор для удовлетворения ваших требований. Вы можете проверить следующие темы для деталей.

Как разместить php-скрипт в основном веб-приложении dotnet, размещенном в Azure

Создайте виртуальный каталог в том же веб-приложении Azure

1

По вопросам рекламы [email protected]