- Установка WordPress на Windows Server 2012 / Windows 8
- Автоматическая установка WordPress
- Ручная установка WordPress на IIS
- Развертываем WordPress на VPS с Windows Server 2012. Пошаговое руководство
- Установка и настройка MySQL
- Установка IIS+ PHP + FastCGI
- Устанавливаем PHP5.6
- Создаём сайт в IIS
- Установка WordPress
Установка WordPress на Windows Server 2012 / Windows 8
В этой заключительной статье цикла, описывающего развертывание веб-сайта на базе IIS с поддержкой PHP и MySQL, мы опишем типовой сценарий установки на нашем сервере «движка» сайта на примере самой популярной на данный момент системы управления контентом (CMS) блогового типа — WordPress.
Итак, предполагается, что на нашем сервере уже установлены:
- IIS с поддержкой PHP (Установка IIS с PHP на Windows)
- Система управления БД MySQL (Установка MySQL на Windows)
- Опционально, для удобства работы с базами данных MySQL можно установить скрипт phpMyAdmin.
Автоматическая установка WordPress
Проще всего развернуть сайт с WordPress с помощью, уже знакомого нам по предыдущим статьям цикла, универсального установщика Microsoft Web Platform Installer (Web PI). Запускаем его и в поле поиска вбиваем wordpress.
Находим в списке продуктов WorpPress, нажимаем Add, а затем Install.
В процессе развертывания сайта WordPress, Web PI автоматически создаст новую базу данных MySQL и пользователя (имя БД, пользователя и его пароль будут отображены на экране установки, в случае необходимости их можно сохранить).
Также будет создан отдельный сайт IIS, живущий на определенном порту (номер порта генерируется установщиком). В нашем примере был создан сайт на порту 30205 с адресом http://localhost:30205 .
После завершения установки в браузере автоматически откроется новое окно, в котором необходимо заполнить следующие поля: заголовок сайта, имя администратора сайта, пароль и e-mail администратора сайта WordPress.
Для завершения установки осталось нажать кнопку Install Wordpress. Дождитесь выполнения скрипта, после чего можно перейти в панель управления WordPress по адресу http://localhost:30205/wp-login.php
Итак, перед нами открылась административная панель WordPress (админка) и можно приступать непосредственно к настройке и наполнению сайта.
Существенный недостаток установки WordPress с помощью WebPI – большое количество «лишних» компонентов, которые устанавливаются вместе с ним.
На скриншоте выделены компоненты, которые были установлены вместе с CMS WordPress. Как видите, их не мало.
И самое главное, вместо нашего «родного» сервера IIS для установленного сайта будет использоваться отдельный инстанс IIS Express 8.0.
Ручная установка WordPress на IIS
Прежде, чем приступить к ручной установке WordPress на Windows 8, нужно выполнить ряд подготовительных операций.
В первую очередь необходимо создать базу данных для хранения данных WordPress и пользователя с правами доступа к этой базе данных. Создать базу и пользователя можно через phpMyAdmin, либо непосредственно из командной строки MySQL.
Открываем командную оболочку MySQL (MySQL Command Line Shell), указываем пароль администратора сервера MySQL (root) и последовательно выполняем такие команды:
mysql> CREATE DATABASE wordpressdb;
mysql> CREATE USER ‘wordpressdb_user’@’localhost’ IDENTIFIED BY ‘DbP@ssw0rd’;
mysql> GRANT ALL ON wordpressdb.* TO ‘wordpressdb_user’@’localhost’ IDENTIFIED BY ‘DbP@ssw0rd’;
Итак, мы создали БД wordpressdb и дали на нее полные права пользователю wordpressdb_user.
Следующий этап — создание отдельного сайта на IIS. Создадим новый каталог (например, с именем MyWordPress) в папке C:\inetpub\wwwroot\ .
Качаем архив с последней версией WordPress с этой страницы https://wordpress.org/download/ (на момент написания статьи это WordPress 4.0) и распаковываем его содержимое в каталог C:\inetpub\wwwroot\MyWordPress.
Откроем консоль управления IIS (Internet Informations Services Manager — C:\WINDOWS\system32\inetsrv\iis.msc) и щелкнув по разделу Sites, выберем Add Website.
В окне указываем имя сайта, путь к каталогу сайта и порт (мы запустим сайт на порту 8080).
Затем в консоли перейдем на созданный сайт (MySitePress) и дважды щелкнем по пункту Authentication.
В разделе аутентификации выберем пункт Anonymous Authentication и в панели Actions нажмите Edit..
В открывшемся окне изменить настройку на Application Pool Identity.
Далее предоставим нашему пулу приложения права записи на каталог, в котором находится сайт WordPress. Сделать это можно командой:
icacls «C:\inetpub\wwwroot\MyWordPress» /grant «IIS APPPOOL\MySitePress»:(OI)(CI)(RX,W)
Итак, мы настроили IIS, и можно переходить непосредственно к установке «движка» WordPress.
Откроем наш сайт в браузере ( http://localhost:8080 ) В открывшемся окне заполним параметры подключения к БД:
Database name : wordpressdb
Database username : wordpressdb_user
Database password : DbP@ssw0rd
Database host : localhost
Table prefix : mywp_ (префикс в общем-то произвольный и нужен, если в дальнейшем в этой же базе будут находится таблицы других сайтов WordPress )
После этого должно открыться окно, аналогичное представленному на 3 скриншоте. Далее все по аналогии.
- Для ускорения выполнения скриптов PHP в IIS рекомендуется установить специальный модуль-акселератор – Windows Cache Extension (или аналог)
- Для формирования SEO-friendly URL адресов нужно установить модуль IIS URL Rewrite
Развертываем WordPress на VPS с Windows Server 2012. Пошаговое руководство
Последнее время многие из наших клиентов сталкиваются с различного рода проблемами при развертывании своего сайта на виртуальном сервере с ОС Windows Server 2012 R2. В связи с этим мы приняли решение написать максимально подробное руководство, в котором пользователи смогут найти ответы на свои вопросы.
В данном руководстве мы развернём WordPress на связке IIS + PHP + MySQL, а также приведём некоторые рекомендации по настройке каждого из этих компонентов. Делать это мы будем на VPS от RUVDS с конфигурацией 2CPU, 2GB RAM, 20GB SSD. Итак, приступим…
Установка и настройка MySQL
Сначала устанавливаем распространяемые пакеты для Visual Studio 2013 (https://www.microsoft.com/ru-ru/download/details.aspx?id=40784)
Далее скачиваем установщик MySQL отсюда (mysql-installer-community-5.6.28.0.msi) и запускаем. Нам понадобится установить сервер и редактор.
Приступаем к настройке. Разработчики MySQL рекомендуют использовать тип конфигурации «Server Machine» при установке MySQL на сервере, на котором также будет запущен и веб-сервер. Данная опция в первую очередь влияет на объем потребляемой памяти. Снимаем флаг с «Open Firewall port for network access», так как веб-сервер будет также находится на данном сервере, а работать с бд мы будем с помощью локального визуального редактора бд MySQL Worbench, который мы также установили на данный сервер. На следующем окне создаём пользователя wp. Под этой учетной записью наш сайт будет работать с базой данных.
На всех следующих окнах просто жмем «Next». На данный момент предлагаемые там настройки по умолчанию нам подойдут.
В файле конфигурации C:\ProgramData\MySQL\MySQL Server 5.7\my.ini добавляем поле bind-address=localhost в разделе [mysqld] для того, чтобы mysql принимал TCP-подключения только на порт кольцевого интерфейса.
Перезапускаем службу MySQL57 в оснастке управления службами services.msc
Запускаем интерпретатор командной строки (cmd.exe) и выполняем:
C:\Users\Administrator>sc queryEx MySQL57 && netstat -nao | findstr 3306
SERVICE_NAME: MySQL57
TYPE : 10 WIN32_OWN_PROCESS
STATE : 4 RUNNING
(STOPPABLE, PAUSABLE, ACCEPTS_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
PID : 1196
FLAGS :
TCP 127.0.0.1:3306 0.0.0.0:0 LISTENING 1196
Итак, сервер запущен и слушает нужный нам порт.
Создадим бд db1, используя установленный нами MySQL Workbench:
Установка IIS+ PHP + FastCGI
Устанавливаем IIS
Сейчас нам требуется установить IIS с модулем FastCGI. Открываем панель управления сервером и кликаем «Add new roles and features»:
Теперь нам необходимо активировать службу CGI (вместе с ней активируется и модуль FastCGI)
Устанавливаем PHP5.6
Скачиваем php 5.6 (php-5.6.22-nts-Win32-VC11-x86.zip). Будем использовать Non-thread safe версию, так как FastCGI сам обеспечивает однопоточное выполнение.
Также для корректной работы php нам понадобиться пакет C++ Redistributable 2012 (https://www.microsoft.com/en-us/download/details.aspx?id=30679).
Распаковываем php в папку c:\PHP. Далее переименовываем файл php.ini-production в php.ini, открываем и устанавливаем следующие параметры:
cgi.force_redirect = 0 — рекомендуется отключить, так как не поддерживается IIS (http://php.net/manual/ru/security.cgi-bin.force-redirect.php)
open_basedir=»c:\inetpub\wwwroot\wordpress»; — директория с вашим сайтом на wordpress
error_log = c:\PHP\php_errors.log — Лог файл, в котором будет отражена информация об ошибках
date.timezone = UTC
php_mysqli.dll — это расширение необходимо wordpress для работы с бд
Проверяем конфигурацию, выполнив в командной строке:
Создаём сайт в IIS
Сначала настроим обработчик для запросов к вашему сайту.
Теперь необходимо произвести некоторые настройки модуля FastCGI.
Настроим документ по умолчанию:
Теперь создадим сайт в IIS. Сначала удалим сайт по умолчанию (Default Web Site).
Наш сайт готов. Но прежде, чем пытаться получить к нему доступ по http, нам необходимо открыть 80 порт TCP.
Открываем оснастку firewall.cpl и добавляем соответствующее правило для входящих подключений:
Далее создадим файл test.php со следующим содержимым:
Поместим этот файл в корневую директорию вашего сайта (c:\inetpub\wwwroot\wordpress) и откроем в браузере ваш «сайт»: ip_вашего_сервера
Должны получить примерно следующее:
Удаляем файл test.php. Теперь можно наконец-то устанавливать WordPress.
Установка WordPress
Скачиваем WordPress (wordpress-4.5.2-ru_RU.zip).
Распаковываем архив и копируем содержимое папки wordpress в нашу корневую директорию (c:\inetpub\wwwroot\wordpress).
Теперь предоставим права на запись в директорию c:\inetpub\wwwroot\wordpress и её поддиректории группе IIS_USRS
Открываем в браузере наш сайт по адресу ip_вашего_сервера и идём по шагам установки:
Авторизуемся и попадаем в личный кабинет CMS WordPress!
Теперь откроем главную страницу по адресу ip_вашего_сервера.