Это руководство содержит сведения по созданию веб-сайта на базе PHP и MySQL в Windows Azure и его развертыванию с помощью Git. Для выполнения заданий нужно будет использовать установленные на компьютере PHP, средство командной строки MySQL (часть MySQL), веб-сервер и Git. Инструкции, содержащиеся в этом руководстве, можно выполнять в любой операционной системе, включая Windows, Mac и Linux. После выполнения всех действий будет создан веб-сайт PHP/MySQL, работающий на платформе Windows Azure.
О чем пойдет речь в данном руководстве:
Следуя инструкциям данного руководства, вы создадите простое веб-приложение на языке PHP для регистрации участников мероприятия. Это приложение будет размещено на веб-сайте Windows Azure. Ниже приведен снимок экрана готового приложения.

Предполагается, что на компьютере уже установлены PHP, средство командной строки MySQL (часть MySQL), веб-сервер и Git.
Примечание. Если разработка данного приложения ведется в ОС Windows, то можно выполнить настройку PHP и автоматическую настройку IIS (встроенного веб-сервера Windows), установив пакет Windows Azure SDK для PHP.
Откройте веб-браузер и перейдите на веб-сайт http://www.windowsazure.com. Чтобы начать работу с помощью бесплатной учетной записи, щелкните в верхнем правом углу Free Trial и выполните указанные действия. Для проверки личности может потребоваться указать номер кредитной карты или мобильного телефона. Счет при этом не выставляется.

Перейдите на страницу https://account.windowsazure.com/ и выполните вход с помощью учетной записи Windows Azure. Щелкните элемент preview features, чтобы вывести доступные варианты предварительного просмотра.

Выполните прокрутку до Web Sites и нажмите кнопку try it now.

Выберите подписку и установите флажок.

Чтобы создать веб-сайт Windows Azure и базу данных MySQL, выполните следующие действия. Войдите на портал Windows Azure (предварительная версия). В нижней левой части портала щелкните значок + New.

Щелкните WEB SITE, а затем CREATE WITH DATABASE.

Введите значение в поле URL, выберите Create a New MySQL Database в раскрывающемся списке DATABASE и укажите центр обработки данных для веб-сайта в раскрывающемся списке REGION. Щелкните стрелку в нижней части диалогового окна.

Введите имя в поле NAME для базы данных, выберите центр обработки данных для базы данных в раскрывающемся списке REGION и установите флажок, выразив тем самым согласие с юридическими условиями. Щелкните флажок в нижней части диалогового окна.

После создания веб-сайта появится сообщение Creation of Web Site [ИМЯ_САЙТА] completed successfully. Теперь можно включить публикацию Git.
Щелкните имя веб-сайта, отображаемого в списке веб-сайтов, чтобы открыть панель быстрого запуска QUICKSTART веб-сайта.

В нижней части страницы QUICKSTART щелкните Set up Git publishing.

Чтобы включить публикацию Git, необходимо указать имя пользователя и пароль. Запомните введенные имя пользователя и пароль. (Если репозиторий Git был настроен ранее, это действие можно пропустить.)

Настройка репозитория займет несколько секунд.

Когда репозиторий будет готов, появятся инструкции по помещению файлов приложения в репозиторий. Запомните эти инструкции, поскольку они понадобятся позднее.

Чтобы подключиться к экземпляру базы данных MySQL, запущенному на веб-сайтах Windows Azure, потребуются сведения о подключении. Для получения этих сведений выполните следующие действия.
На панели быстрого запуска веб-сайта в правой части страницы щелкните ссылку View connection strings.

Запомните значения для
После создания веб-сайта Windows Azure можно разработать приложение, протестировать его на локальном компьютере, а затем развернуть.
Приложение Registration –– это простое PHP-приложение для регистрации участников мероприятия путем ввода имени и адреса электронной почты пользователя. Сведения о предыдущих зарегистрировавшихся участниках отображаются в таблице. Информация о регистрации хранится в экземпляре базы данных MySQL. Приложение состоит из двух файлов (код для копирования и вставки указан ниже).
Чтобы создать и запустить приложение локально, выполните следующие действия. Предполагается, что на локальном компьютере установлены PHP, средство командной строки MySQL (часть MySQL) и веб-сервер и включено расширение PDO для MySQL.
Подключитесь к удаленному серверу MySQL с помощью полученных ранее значений для
mysql -h{Data Source] -u[User Id] -p[Password] -D[Database]
Откроется командная строка MySQL.
mysql>
Вставьте следующую команду
mysql> CREATE TABLE registration_tbl(id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(id), name VARCHAR(30), email VARCHAR(30), date DATE);
В корневом каталоге веб-сервера создайте папку с именем
Теперь можно перейти к файлу http://localhost/registration/index.php, чтобы протестировать приложение.
После тестирования на локальном компьютере приложение можно опубликовать на веб-сайте Windows Azure с помощью Git. Вы включите локальный репозиторий Git и опубликуете приложение.
Примечание. Выполните действия, которые описаны в конце разделов «Создание веб-сайта Windows Azure» и «Настройка публикации Git».
(Необязательно) Если вы забыли или потеряли URL-адрес удаленного репозитория Git, то перейдите на портале на вкладку Deployment.
![clip_image019[1] clip_image019[1]](https://habrastorage.org/r/w1560/getpro/habr/post_images/43b/1b0/d9a/43b1b0d9ae556c4bca156864e227f22d.jpg)
Откройте GitBash (или терминал, если Git занесен в
git init
git add.
git commit -m "initial commit"
git remote add azure [URL for remote repository]
git push azure master
Появится запрос на ввод пароля, созданного ранее.

Перейдите к файлу http://[имя_сайта].azurewebsites.net/index.php, чтобы начать работу с приложением (эти сведения будут сохранены на панели мониторинга учетной записи).

Опубликовав приложение, в него можно вносить изменения и публиковать их с помощью Git.
Чтобы опубликовать изменения в приложении, выполните следующие действия.
Измените приложение локально. Откройте GitBash (или терминал, если Git занесен в PATH), перейдите в корневой каталог приложения и выполните следующие команды.
git add.
git commit -m "comment describing changes"
git push azure master
Появится запрос на ввод пароля, созданного ранее.

Перейдите к файлу http://[имя_сайта].azurewebsites.net/index.php, чтобы просмотреть приложения и внесенные изменения.

На вкладке Deployments портала управления появится новое развертывание.

О чем пойдет речь в данном руководстве:
- Как создать веб-сайт Windows Azure и базу данных MySQL с помощью портала управления (предварительная версия). Поскольку на веб-сайтах Windows Azure технология PHP включена по умолчанию, для выполнения кода PHP никакие особые действия не требуются.
- Как публиковать и повторно публиковать приложения на платформе Windows Azure с помощью Git.
Следуя инструкциям данного руководства, вы создадите простое веб-приложение на языке PHP для регистрации участников мероприятия. Это приложение будет размещено на веб-сайте Windows Azure. Ниже приведен снимок экрана готового приложения.

Настройка среды разработки
Предполагается, что на компьютере уже установлены PHP, средство командной строки MySQL (часть MySQL), веб-сервер и Git.
Примечание. Если разработка данного приложения ведется в ОС Windows, то можно выполнить настройку PHP и автоматическую настройку IIS (встроенного веб-сервера Windows), установив пакет Windows Azure SDK для PHP.
Создание учетной записи Windows Azure
Откройте веб-браузер и перейдите на веб-сайт http://www.windowsazure.com. Чтобы начать работу с помощью бесплатной учетной записи, щелкните в верхнем правом углу Free Trial и выполните указанные действия. Для проверки личности может потребоваться указать номер кредитной карты или мобильного телефона. Счет при этом не выставляется.

Включение сервиса Windows Azure Web Sites в свою подписку
Перейдите на страницу https://account.windowsazure.com/ и выполните вход с помощью учетной записи Windows Azure. Щелкните элемент preview features, чтобы вывести доступные варианты предварительного просмотра.

Выполните прокрутку до Web Sites и нажмите кнопку try it now.

Выберите подписку и установите флажок.

Создание веб-сайта Windows Azure и настройка публикации Git
Чтобы создать веб-сайт Windows Azure и базу данных MySQL, выполните следующие действия. Войдите на портал Windows Azure (предварительная версия). В нижней левой части портала щелкните значок + New.

Щелкните WEB SITE, а затем CREATE WITH DATABASE.

Введите значение в поле URL, выберите Create a New MySQL Database в раскрывающемся списке DATABASE и укажите центр обработки данных для веб-сайта в раскрывающемся списке REGION. Щелкните стрелку в нижней части диалогового окна.

Введите имя в поле NAME для базы данных, выберите центр обработки данных для базы данных в раскрывающемся списке REGION и установите флажок, выразив тем самым согласие с юридическими условиями. Щелкните флажок в нижней части диалогового окна.

После создания веб-сайта появится сообщение Creation of Web Site [ИМЯ_САЙТА] completed successfully. Теперь можно включить публикацию Git.
Щелкните имя веб-сайта, отображаемого в списке веб-сайтов, чтобы открыть панель быстрого запуска QUICKSTART веб-сайта.

В нижней части страницы QUICKSTART щелкните Set up Git publishing.

Чтобы включить публикацию Git, необходимо указать имя пользователя и пароль. Запомните введенные имя пользователя и пароль. (Если репозиторий Git был настроен ранее, это действие можно пропустить.)

Настройка репозитория займет несколько секунд.

Когда репозиторий будет готов, появятся инструкции по помещению файлов приложения в репозиторий. Запомните эти инструкции, поскольку они понадобятся позднее.

Получение сведений об удаленном подключении к базе данных MySQL
Чтобы подключиться к экземпляру базы данных MySQL, запущенному на веб-сайтах Windows Azure, потребуются сведения о подключении. Для получения этих сведений выполните следующие действия.
На панели быстрого запуска веб-сайта в правой части страницы щелкните ссылку View connection strings.

Запомните значения для
Database, Data Source, User Id, и Password.Создание и тестирование приложения на локальном компьютере
После создания веб-сайта Windows Azure можно разработать приложение, протестировать его на локальном компьютере, а затем развернуть.
Приложение Registration –– это простое PHP-приложение для регистрации участников мероприятия путем ввода имени и адреса электронной почты пользователя. Сведения о предыдущих зарегистрировавшихся участниках отображаются в таблице. Информация о регистрации хранится в экземпляре базы данных MySQL. Приложение состоит из двух файлов (код для копирования и вставки указан ниже).
- index.php. Отображает форму для регистрации и таблицу с данными о зарегистрировавшемся участнике.
Чтобы создать и запустить приложение локально, выполните следующие действия. Предполагается, что на локальном компьютере установлены PHP, средство командной строки MySQL (часть MySQL) и веб-сервер и включено расширение PDO для MySQL.
Подключитесь к удаленному серверу MySQL с помощью полученных ранее значений для
Data Source, User Id, Password и Database.mysql -h{Data Source] -u[User Id] -p[Password] -D[Database]
Откроется командная строка MySQL.
mysql>
Вставьте следующую команду
CREATE TABLE, чтобы создать таблицу registration_tbl в базе данных.mysql> CREATE TABLE registration_tbl(id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(id), name VARCHAR(30), email VARCHAR(30), date DATE);
В корневом каталоге веб-сервера создайте папку с именем
registration, а в ней –– файл с именем index.php. Откройте файл index.php в текстовом редакторе или IDE и добавьте следующий код. Затем внесите необходимые изменения, отмеченные комментариями //TODO:.<html> < head> < Title>Registration Form</Title> < style type="text/css"> body { background-color: #fff; border-top: solid 10px #000; color: #333; font-size: .85em; margin: 20; padding: 20; font-family: "Segoe UI", Verdana, Helvetica, Sans-Serif; } h1, h2, h3,{ color: #000; margin-bottom: 0; padding-bottom: 0; } h1 { font-size: 2em; } h2 { font-size: 1.75em; } h3 { font-size: 1.2em; } table { margin-top: 0.75em; } th { font-size: 1.2em; text-align: left; border: none; padding-left: 0; } td { padding: 0.25em 2em 0.25em 0em; border: 0 none; } < /style> < /head> < body> < h1>Register here!</h1> < p>Fill in your name and email address, then click <strong>Submit</strong> to register.</p> < form method="post" action="index.php" enctype="multipart/form-data" > Name <input type="text" name="name" id="name"/></br> Email <input type="text" name="email" id="email"/></br> < input type="submit" name="submit" value="Submit" /> < /form> <?php // DB connection info //TODO: Update the values for $host, $user, $pwd, and $db //using the values you retrieved earlier from the portal. $host = "value of Data Source"; $user = "value of User Id"; $pwd = "value of Password"; $db = "value of Database"; // Connect to database. try { $conn = new PDO( "mysql:host=$host;dbname=$db", $user, $pwd); $conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION ); } catch(Exception $e){ die(var_dump($e)); } // Insert registration info if(!empty($_POST)) { try { $name = $_POST['name']; $email = $_POST['email']; $date = date("Y-m-d"); // Insert data $sql_insert = "INSERT INTO registration_tbl (name, email, date) VALUES (?,?,?)"; $stmt = $conn->prepare($sql_insert); $stmt->bindValue(1, $name); $stmt->bindValue(2, $email); $stmt->bindValue(3, $date); $stmt->execute(); } catch(Exception $e) { die(var_dump($e)); } echo "<h3>Your're registered!</h3>"; } // Retrieve data $sql_select = "SELECT * FROM registration_tbl"; $stmt = $conn->query($sql_select); $registrants = $stmt->fetchAll(); if(count($registrants) > 0) { echo "<h2>People who are registered:</h2>"; echo "<table>"; echo "<tr><th>Name</th>"; echo "<th>Email</th>"; echo "<th>Date</th></tr>"; foreach($registrants as $registrant) { echo "<tr><td>".$registrant['name']."</td>"; echo "<td>".$registrant['email']."</td>"; echo "<td>".$registrant['date']."</td></tr>"; } echo "</table>"; } else { echo "<h3>No one is currently registered.</h3>"; } ?> < /body> < /html>
Теперь можно перейти к файлу http://localhost/registration/index.php, чтобы протестировать приложение.
Публикация приложения
После тестирования на локальном компьютере приложение можно опубликовать на веб-сайте Windows Azure с помощью Git. Вы включите локальный репозиторий Git и опубликуете приложение.
Примечание. Выполните действия, которые описаны в конце разделов «Создание веб-сайта Windows Azure» и «Настройка публикации Git».
(Необязательно) Если вы забыли или потеряли URL-адрес удаленного репозитория Git, то перейдите на портале на вкладку Deployment.
![clip_image019[1] clip_image019[1]](https://habrastorage.org/r/w1560/getpro/habr/post_images/43b/1b0/d9a/43b1b0d9ae556c4bca156864e227f22d.jpg)
Откройте GitBash (или терминал, если Git занесен в
PATH), перейдите в корневой каталог приложения и выполните следующие команды.git init
git add.
git commit -m "initial commit"
git remote add azure [URL for remote repository]
git push azure master
Появится запрос на ввод пароля, созданного ранее.

Перейдите к файлу http://[имя_сайта].azurewebsites.net/index.php, чтобы начать работу с приложением (эти сведения будут сохранены на панели мониторинга учетной записи).

Опубликовав приложение, в него можно вносить изменения и публиковать их с помощью Git.
Публикация изменений в приложении
Чтобы опубликовать изменения в приложении, выполните следующие действия.
Измените приложение локально. Откройте GitBash (или терминал, если Git занесен в PATH), перейдите в корневой каталог приложения и выполните следующие команды.
git add.
git commit -m "comment describing changes"
git push azure master
Появится запрос на ввод пароля, созданного ранее.

Перейдите к файлу http://[имя_сайта].azurewebsites.net/index.php, чтобы просмотреть приложения и внесенные изменения.

На вкладке Deployments портала управления появится новое развертывание.


