Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Это руководство содержит сведения по созданию веб-сайта PHP Windows Azure с Windows Azure SQL Database и его развертыванию с помощью Git. Предполагается, что на вашем компьютере установлены PHP, SQL Server Express, драйверы Microsoft для SQL Server для PHP, веб-сервер и Git. После выполнения всех действий вы получите веб-сайт PHP с базой данных SQL, работающий на платформе Windows Azure.
Примечание. Для установки и настройки PHP, SQL Server Express, драйверов Microsoft для SQL Server для PHP и служб IIS можно воспользоваться установщиком Microsoft Web Platform Installer.
О чем пойдет речь в данном руководстве:
- Как создать веб-сайт Windows Azure и базу данных SQL с помощью портала управления (предварительная версия). Поскольку на веб-сайтах Windows Azure технология PHP включена по умолчанию, для выполнения кода PHP никакие особые действия не требуются.
- Как публиковать и повторно публиковать приложения на платформе Windows Azure с помощью Git.
Следуя инструкциям в этом руководстве, вы создадите простое веб-приложение на языке PHP для регистрации. Это приложение будет размещено на веб-сайте Windows Azure. Снимок экрана готового приложения приведен ниже:

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

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

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

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

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

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

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

Введите значение для базы данных в поле NAME, выберите значение для EDITION (WEB или BUSINESS), задайте значение MAX SIZE для базы данных и значение для COLLATION, выберите NEW SQL Database server. Щелкните стрелку в нижней части диалогового окна.

Введите имя администратора и пароль (пароль подтвердите), выберите регион, в котором будет создан сервер базы данных SQL, и установите флажок Allow Windows Azure Services to access the server.

После создания веб-сайта появится сообщение Creation of Web Site ‘[ИМЯ_САЙТА]’ completed successfully. Теперь можно включить публикацию Git.
Щелкните имя веб-сайта, отображаемого в списке веб-сайтов, чтобы открыть панель быстрого запуска (Quick Start) веб-сайта.
75F7.jpg)
В нижней части страницы Quick Start щелкните Set up Git publishing.

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

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

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

Получение сведений о подключении к базе данных SQL
Чтобы подключиться к экземпляру базы данных SQL, запущенному на веб-сайтах Windows Azure, потребуются сведения о подключении. Чтобы получить сведения о подключении к базе данных SQL, выполните следующие действия.
На Портале управления (предварительная версия) щелкните LINKED RESOURCES, а затем щелкните имя базы данных.

Щелкните View connection strings.

В разделе PHP открывшегося диалогового окна запомните значения для SERVER, DATABASE, и USERNAME.
Создание и тестирование приложения локально
Приложение Registration — это простое PHP-приложение для регистрации участников мероприятия путем ввода имени и адреса электронной почты пользователя. Сведения о предыдущих зарегистрировавшихся лицах отображаются в таблице. Информация о регистрации хранится в экземпляре базы данных SQL. Приложение состоит из двух файлов (код для копирования и вставки указан ниже).
- index.php. Отображает форму для регистрации и таблицу с данными о зарегистрировавшемся участнике.
- createtable.php. Создает таблицу базы данных SQL для приложения. Этот файл используется только один раз.
Чтобы запустить приложение локально, выполните следующие действия. Предполагается, что на локальном компьютере установлены PHP, SQL Server Express и веб-сервер и включено расширение PDO для SQL Server.
Создайте базу данных SQL Server с именем registration. Это можно сделать из командной строки sqlcmd с помощью следующих команд.
>sqlcmd -S localhost\sqlexpress -U <local user name> -P <local password>
1> create database registration
2> GO
В корневом каталоге веб-сервера создайте папку с именем registration, а в ней создайте два файла, один с именем createtable.php и другой с именем index.php.
Откройте файл createtable.php в текстовом редакторе или IDE и добавьте указанный ниже код. Этот код будет использоваться для создания таблицы registration_tbl в базе данных .
<?php
// DB connection info
$host = "localhost\sqlexpress";
$user = "user name";
$pwd = "password";
$db = "registration";
try{
$conn = new PDO( "sqlsrv:Server= $host ; Database = $db ", $user, $pwd);
$conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
$sql = "CREATE TABLE registration_tbl(
id INT NOT NULL IDENTITY(1,1)
PRIMARY KEY(id),
name VARCHAR(30),
email VARCHAR(30),
date DATE)";
$conn->query($sql);
}
catch(Exception $e){
die(print_r($e));
}
echo "<h3>Table created.</h3>";
?>
Примечание. Потребуется обновить значения и локальным именем пользователя и паролем SQL Server.
Откройте веб-браузер и перейдите к файлу https://localhost/registration/createtable.php. В базе данных будет создана таблица.
Откройте файл index.php в текстовом редакторе или IDE и добавьте базовый код HTML и CSS для страницы (код PHP будет добавлен на более поздних этапах).
<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
Внутри тегов PHP добавьте код PHP для подключения к базе данных.
// DB connection info
$host = "localhost\sqlexpress";
$user = "user name";
$pwd = "password";
$db = "registration";
// Connect to database.
try {
$conn = new PDO( "sqlsrv:Server= $host ; Database = $db ", $user, $pwd);
$conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );}
catch(Exception $e){
Примечание. Потребуется еще раз обновить значения и локальным именем пользователя и паролем MySQL.
После кода подключения к базе данных добавьте код для вставки регистрационных данных в базу данных.
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>";
}
И наконец, после указанного выше кода добавьте код для извлечения данных из базы данных.
$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>";
}
Теперь можно перейти к файлу https://localhost/registration/index.php, чтобы протестировать приложение.
Публикация приложения
Протестировав приложение локально, его можно опубликовать на веб-сайте Windows Azure с помощью Git. Однако сначала необходимо обновить в приложении сведения о подключении к базе данных. Используя сведения о подключении к базе данных, полученные ранее (в разделе «Получение сведений о подключении к базе данных SQL» ), обновите следующую информацию в обоих файлах — и — соответствующими значениями.
// DB connection info
$host = "tcp:<value of SERVER>";
$user = "<value of USERNAME>@<server ID>";
$pwd = "<your password>";
$db = "<value of DATABASE>";
Примечание. К значению SERVER следует добавить , а значение объединяет значения USERNAME, '@' и идентификатор сервера. Идентификатор сервера состоит из первых 10 символов значения SERVER.
Теперь вы готовы настроить публикацию Git и опубликовать приложение.
Примечание. Выполните те же самые действия, которые описаны в конце разделов «Создание веб-сайта Windows Azure» и «Настройка публикации Git».
Откройте GitBash (или терминал, если в имеется Git), измените каталоги на корневой каталог приложения и выполните следующие команды.
git init
git add .
git commit -m "initial commit"
git remote add azure [URL for remote repository]
git push azure master
Появится запрос на ввод пароля, созданного ранее.
Перейдите на сайт https://[имя_сайта].azurewebsites.net/createtable.php, чтобы создать таблицу MySQL для приложения. Перейдите на сайт https://[имя_сайта].azurewebsites.net/index.php, чтобы начать использование приложения.
В опубликованное приложение можно вносить изменения и публиковать их с помощью Git.
Публикация изменений в приложение
Чтобы опубликовать изменения приложения, выполните следующие действия.
Измените приложение локально.
Откройте GitBash (или терминал, если в имеется Git), измените каталоги на корневой каталог приложения и выполните следующие команды.
git add .
git commit -m "comment describing changes"
git push azure master
Появится запрос на ввод пароля, созданного ранее.
Перейдите на сайт https://[имя_сайта].azurewebsites.net/index.php, чтобы просмотреть изменения.