2015-02-02 6 views
0

Я пытаюсь переместить свое веб-приложение PHP в Azure (PaaS) в качестве облачного сервиса (Webrole) с использованием Azure SDK для PHP. Поддерживает ли облачные сервисы azure для «COM-взаимодействия». Мое приложение взаимодействует с сторонним программным обеспечением для обработки результатов. Как установить это программное обеспечение в облачный сервис?PHP-приложение на Azure

+0

Этот сайт предназначен для вопросов программирования. Мы не являемся общей технической поддержкой сервера. –

ответ

2

Облачные службы запускаются на Windows Server, так как общее правило ответ «Да», поддерживается COM Interop.

Более конкретно, скорее всего, для вашего решения PHP требуется установка компонента, который требует COM Interop для работы - вам нужно будет автоматизировать установку этого компонента как часть процесса развертывания using a statup task.

В качестве примечания Azure SDK для PHP больше относится к поддержке автоматизации и взаимодействия с Azure-сервисами (хранилище blob и т. Д.), А не к «портам» приложений PHP для Azure. Если ваше приложение работает сегодня на Windows Server с IIS, оно должно запускаться на Azure Web Roles.

+0

Спасибо, Саймон! У меня есть следующий вопрос: есть ли лучший способ упаковать мое приложение, чтобы развернуть его на azure в качестве облачного сервиса? –

+0

Вы довольно ограничены в настройках, потому что используете PHP. В худшем случае вы можете переключиться на развертывание на виртуальную машину, которая дает вам полный контроль над сервером. Если вы действительно хотите использовать веб-роль, следуйте приведенным здесь указаниям: http://blogs.msdn.com/b/silverlining/archive/2012/06/21/creating-a-php-web-role-in-windows -azure.aspx, то вы можете изменить файл setup.cmd для установки ваших предварительных условий (если они поддерживают автоматическую установку). –

0

Вы можете использовать задачу запуска в облачной службе и выполнить эту задачу (которая может быть пакетным или скриптом powershell) запустить regsvr32.exe для регистрации COM-файлов .dll или запустить setup.exe или независимо от того, какой конкретный установщик использует ваше стороннее программное обеспечение.

Это хорошая идея с облачным сервисом, чтобы сделать задачу запуска idempotent, особенно с такими задачами, как регистрация COM .dll или стороннее программное обеспечение. Это можно сделать, создав текстовый файл на локальном хранилище экземпляра облачной службы, а затем проверьте наличие текстового файла. Если он существует, вы знаете, что конкретный шаг вашей задачи запуска уже запущен на этом компьютере, и его не нужно запускать снова. Это необходимо, потому что иногда Azure повторно использует экземпляры Cloud Service.