Как отлаживать PHP в MS Azure

Прежде всего: мне было поручено развернуть сайт Drupal на Azure.

Локально я использую OS X, работающую с Apache, и все работает нормально. Когда я развертываю проект в Azure, я получаю сообщение об ошибке. После некоторой отладки я выделил ошибку для этого фрагмента кода:

private function getToken(){ $ch = curl_init($this->host . $this->clientId . "&client_secret=" . $this->clientSecret); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HTTPHEADER, array('accept: application/json',)); $response = json_decode(curl_exec($ch)); curl_close($ch); $token = $response->access_token; dvm($response, $name = NULL); return $token; } 

dvm() – это функция Drupal Devel, но достаточно сказать, что это своего рода print_r для Drupal на стероидах.

Проблема, которую я получаю, заключается в том, что по какой-либо причине $result возвращает NULL . Когда я запускаю тот же код на своей локальной машине и в Linux / Debian, все работает как ожидалось (я получаю объект в результате curl ).

Это приводит к выводу, что Azure не нравится в этом фрагменте кода. Проблема в том, чтобы выяснить, что. Есть идеи?

Для среды prod display_errors во время выполнения PHP в Azure Web Apps. Мы можем открыть настройку для отладки с помощью изменения встроенных PHP-конфигураций.

Вот простые шаги:

1, Добавьте файл .user.ini в корневой каталог.

2, добавьте настройки конфигурации в файл .user.ini, используя тот же синтаксис, который вы использовали бы в файле php.ini . По вашему требованию ваш файл .user.ini будет содержать этот текст:

display_errors = On

3, Разверните свое веб-приложение.

4, Перезапустите веб-приложение.

Вы можете прочитать официальное руководство для получения дополнительной информации.

Кроме того, мы можем войти в консоль Kudu на наших сайтах для управления нашими сайтами. URL-адрес консоли Kudu должен выглядеть так: https://{your_web_site_name}. scm.azurewebsites.net https://{your_web_site_name}. scm.azurewebsites.net и нажмите Tools => Diagnostic dump для загрузки диагностических журналов.

Дополнительно, мы можем использовать WebMatrix для прямого изменения вашего кода в Azure Web Apps.