Веб-приложение Azure, работающее с PHP (Laravel) в Linux, не может подключиться к SQL Server - PullRequest
0 голосов
/ 13 июня 2019

У меня есть php веб-приложение на Azure и SQL Server. Я запускаю Laravel и пытаюсь подключиться к SQL Server, но получаю сообщение об ошибке:

This extension requires the Microsoft ODBC Driver for SQL Server to communicate with SQL Server. Access the following URL to download the ODBC Driver for SQL Server for x64

Если я устанавливаю драйвер ODBC, он работает, но, очевидно, это не вариант, потому что при перезапуске службы мне придется каждый раз переустанавливать его. Итак, есть ли решение для этого? Я имею в виду, что видел, что это невозможно, только в виртуальной машине, но означает ли это, что у нас не может быть PHP + SQL Server в веб-приложении Azure?

1 Ответ

0 голосов
/ 13 июня 2019

Всякий раз, когда образ докера перезапускает драйвер ODBC, он пропадает, поэтому нам нужно установить его с помощью сценария запуска. Если вы хотите подключить php azure web app к SQL Server, установите переменные среды, а затем:

  1. Подключение через веб-SSH к веб-приложению Azure
  2. Проверьте релиз Linux, запустив: cat / etc / os-release
  3. Используйте wget для загрузки правильного драйвера ODBC отсюда: https://docs.microsoft.com/en-us/sql/connect/odbc/download-odbc-driver-for-sql-server?view=sql-server-2017
  4. Убедитесь, что драйвер ODBC находится в домашней папке вашего веб-приложения Azure (чтобы он был постоянным)
  5. Создайте файл startup.sh в вашей домашней папке со следующим:

    ACCEPT_EULA = Y apt-get install -y / home /

    apache2ctl -D FOREGROUND

  6. Перейдите на страницу конфигурации своего веб-приложения Azure и нажмите Общие настройки

  7. Под командой запуска используйте "/home/startup.sh"

Теперь при каждой перезагрузке образа Docker устанавливаются отсутствующие драйверы ODBC.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...