Статьи

Перспектива PHP на сайтах Windows Azure

Обновление весной Windows Azure был большим. Из всех обновлений одним из самых интересных является добавление веб-сайтов Windows Azure. По сути, Windows Azure теперь поддерживает возможность быстрого и простого развертывания веб-сайтов ASP.NET, Node.js и PHP в облачной среде с высокой степенью масштабируемости, которая позволяет начинать с малого (и бесплатно), а затем наращивать по мере роста трафика. , Уже есть много отличного контента, который описывает, как использовать веб-сайты Windows Azure. Однако в этой статье я хочу рассмотреть, как веб-сайты Windows Azure выглядят через призму PHP. С учетом сказанного, большая часть этого поста полезна независимо от того, какой язык программирования вы выбрали.

Сначала я укажу на то, что я считаю самым большим улучшением: почти мгновенное время развертывания. Если вы ранее внедряли код PHP в веб-роли Windows Azure и рабочие роли, вам пришлось ждать от 10 до 15 минут, пока новые виртуальные машины были подготовлены, настроены, запущены и т. Д. На веб-сайтах Windows Azure вы можете увидеть свой код в действие в течение нескольких секунд (и у вас есть несколько вариантов того, как вы развернете свой код). Конечно, это не единственное улучшение. Читай дальше, чтобы узнать больше…

Как получить доступ к веб-сайтам Windows Azure?

1. Если у вас нет учетной записи Windows Azure, вам нужно создать ее (если у вас есть, перейдите к шагу 2). Вы можете получить бесплатную учетную запись , перейдя по адресу http://www.windowsazure.com , нажав Бесплатная пробная версия и выполнив шаги регистрации.

образ

2. Перейдите на https://account.windowsazure.com/ и войдите в свою учетную запись Windows Azure.

3. Нажмите функции предварительного просмотра, чтобы просмотреть доступные предварительные просмотры.

образ

4. Прокрутите вниз до веб-сайтов и нажмите попробовать сейчас .

образ

5. Выберите свою подписку и нажмите чек.

образ

Как мне создать сайт?

Уже есть много хорошего контента, который проведет вас через создание сайта. Вот что я предлагаю: создайте сайт PHP-MySQL для Windows Azure и разверните его с помощью Git . Однако короткая история такова: перейдите на портал управления , нажмите кнопку + Новая в нижней части страницы…

образ

… выберите WEB SITE , затем выберите БЫСТРАЯ CREATE , CREATE с базой данных , или ОТ GALLERY

образ

… и следуйте инструкциям

Как мне развернуть мой код?

У вас есть 3 варианта развертывания кода PHP на веб-сайте Windows Azure: Git, FTP и Web Deploy. WebMatrix позволяет развертывать напрямую из IDE, используя либо FTP, либо Web Deploy под крышками. Уже есть несколько хороших учебных пособий, которые охватывают детали для каждого из этих вариантов:

Тем не менее, короткая история заключается в том, что после того, как вы создадите свой сайт, вам действительно нужно …

  • Нажмите значок облака ( образ), чтобы перейти на страницу быстрого запуска вашего сайта, затем нажмите Настройка публикации Git

образ

-ИЛИ ЖЕ-

  • Получите ваше имя хоста FTP и имя пользователя из панели вашего сайта, затем подключитесь к вашему любимому клиенту FTP …

образ

Примечание . Сначала вам может потребоваться нажать « Сбросить учетные данные развертывания», чтобы создать имя пользователя и / или создать / сбросить пароль.

образ

-ИЛИ ЖЕ-

  • Нажмите WEBMATRIX в нижней части панели инструментов вашего сайта, чтобы открыть свой сайт (включая параметры публикации) в WebMatrix (тогда вы можете просто нажать «Опубликовать» в среде IDE)…

образ

Как мне настроить сайт?

CONFIGURE вкладка позволяет настроить несколько параметров для вашего сайта. Наиболее полезные опции для сайтов PHP:

  • Версия PHP . PHP включен по умолчанию. (См. Как настроить PHP? Ниже для более подробной информации.)

образ

  • Имена хостов . Вы можете добавить дополнительные имена хостов для вашего сайта. Однако этот параметр доступен только в том случае, если вы работаете с зарезервированными экземплярами (см. « Как масштабировать сайт?» Ниже).

образ

 

  • Диагностика . Эти параметры по умолчанию отключены. Включив их, вы получите доступ к полезной информации о сервере, которую я покажу вам, как получить информацию о том, как диагностировать проблемы? ниже.

образ

 

  • Настройки приложения . Вы можете установить пары ключ-значение в качестве настроек приложения. Эти пары ключ-значение будут доступны в переменной $ _SERVER .

образ

 Одним из вариантов использования этих настроек может быть сохранение типа и имени сервера базы данных или имени пользователя и пароля. Затем вы можете изменить их на лету без необходимости повторного развертывания приложения.

  • Строки подключения . Если вы настроили базу данных в качестве связанного ресурса для своего веб-сайта, вы можете просмотреть строку подключения.

образ

 

  • Документы по умолчанию . Вы можете изменить порядок документов по умолчанию и добавить новые.

образ

Как мне настроить PHP?

Как упоминалось выше, PHP включен на веб-сайтах Windows Azure по умолчанию. Однако, как и на большинстве веб-хостингов, вы не имеете полного контроля над конфигурацией PHP. На данный момент PHP 5.3.13 является единственной доступной версией, и у вас нет доступа к файлу php.ini , поэтому вы не можете изменить основные значения конфигурации. И на момент написания этой статьи у вас нет возможности включать / отключать расширения. (Я прикрепил к этому сообщению файл .htm с выводом phpinfo () с веб-сайта Windows Azure, чтобы видеть все подробности конфигурации PHP.) Однако, хорошая новость заключается в том, что вы можете использовать функцию ini_set для установки локального Значения конфигурации. Я нашел это очень полезным во время разработки:

    ini_set(“display_errors”, “On”);

Это не будет работать для всех параметров конфигурации, но это работает для многих.

В настоящее время команда веб-сайта Windows Azure думает о различных способах сделать настройку / настройку PHP более гибкой. Если вы хотите поделиться своими мыслями, пожалуйста, оставьте их в комментариях, и я позабочусь, чтобы команда их услышала.

Как я могу контролировать сайт?

На вкладке «Монитор» представлены графические и числовые представления для нескольких ключевых показателей по умолчанию: время процессора, запросы, выход данных, вход данных и ошибки сервера HTTP:

образ

Тем не менее, вы также можете добавить дополнительные метрики, нажав кнопку ДОБАВИТЬ МЕТРИКИ в нижней части страницы:

образ

Как мне диагностировать проблемы?

Для диагностики проблем необходимо убедиться, что вы настроили свой сайт так, чтобы у вас был доступ к полезной информации. Как я упоминал ранее (в разделе Как настроить сайт? ), Включение диагностики для ведения журнала веб-сервера, подробных сообщений об ошибках и отслеживания неудачных запросов — это один из шагов к получению полезной информации. После включения этой диагностики вы можете использовать свой любимый FTP-клиент для просмотра и загрузки соответствующих файлов.

образ

И, как я уже упоминал ранее, использование функции ini_set может быть полезно при отображении ошибок PHP (поскольку для display_errors не установлено значение On глобально).

Как мне масштабировать сайт?

Веб-сайты Windows Azure позволяют увеличивать масштаб (т. Е. Переходить на более здоровенные компьютеры) и масштабировать (т. Е. Добавлять экземпляры). Вы можете сделать одно или оба с помощью нескольких кликов на вкладке SCALE.

Чтобы увеличить масштаб сайта, вам нужно переключить свой сайт на зарезервированные экземпляры (вместо общего доступа). И, как видно из примечания на скриншоте, это будет стоить. Подробности о ценах здесь: https://www.windowsazure.com/en-us/pricing/details/#web-sites

образ

На этом скриншоте вы можете увидеть, какие опции масштабирования доступны:

образ

Независимо от того, используете ли вы общий или зарезервированный режим, вы можете масштабировать его, используя ползунок, чтобы увеличить количество экземпляров:

образ

Примечание . В бесплатной пробной версии вы получаете до 10 бесплатных веб-сайтов (в режиме общего доступа). Экземпляры этого не засчитываются этим свободный лимит. Таким образом, вы можете иметь 10 сайтов, каждый из которых работает по 3 экземпляра.

Это оно! Попробуйте веб-сайты Windows Azure и дайте нам знать, что вы думаете.

Спасибо.

-Брайан

phpinfo.zip