SMF на локальном сервере
Серф
Рубрика: Статьи
Метки: Nimp | Open Server | UniServer | Xampp | Денвер | сервер | установка
Просмотров: 4784
Не секрет, что зачастую выбор того или иного форумного движка основан на опыте работы с ним. Иногда этот опыт ограничивается двумя фазами (установил, не понравилось), иногда — одной (хочу, как у знакомого). Впрочем, бывают и исключения. Эта статья посвящена НЕ выбору SMF (предполагается, что выбор уже сделан) и НЕ выбору хостинга (тестировать будем локально). Это даже не рекламный обзор (типа «Денвер — это круто, все ставим его!» или «товарищ Ленин говорил: Xampp, Xampp и ещё раз Xampp...») — мы лишь рассмотрим несколько более или менее известных решений для создания локальных серверов (кстати, msm.ru может предоставить вам сервер в аренду). И проанализируем, как должна осуществляться установка SMF при работе с каждым из рассматриваемых далее продуктов. А уж вы сами выберете для себя то, что именно вам покажется удобней.
Что нам понадобится (инструментарий):
- какой-нибудь архиватор (7-zip),
- текстовый редактор с подсветкой кода (Notepad++),
- файловый менеджер (Total Commander),
- любимый браузер,
- навыки работы с файлами и папками в Windows.
Самое важное:
- дистрибутив SMF => Download SMF 2 => Full install
- локализация => выбираем среди языков russian-utf8
Денвер
Джентльменский набор Web-разработчика («Д.н.w.р», читается «Денвер») — проект Дмитрия Котерова, набор дистрибутивов (Apache, PHP, MySQL, Perl и т.д.) и программная оболочка, используемые Web-разработчиками для разработки сайтов на «домашней» (локальной) Windows-машине без необходимости выхода в Интернет. Главная особенность Денвера — удобство при удаленной работе сразу над несколькими независимыми проектами и возможность размещения на Flash-накопителе.
Рассмотрим процесс по шагам.
- Скачиваем дистрибутив и начинаем установку. Запускаем скачанный exe-файл (что-то вроде Denwer3_Base_***.exe) и устанавливаем Денвер туда, куда он хочет (или меняем путь на свой).
- В конце установки выбираем вариант 1, как наиболее удобный, и создаем ярлыки на рабочем столе, для запуска серверов.
- Необязательный этап: скачиваем обновление для Денвера.
- Запускаем Денвер (ярлык Start Denwer на Рабочем столе) и свой любимый браузер (если он уже не запущен), вводим в адресной строке http://localhost
- Если увидите приветствие «Ура, заработало!», значит всё у Вас в порядке (если не увидите — ищите причину на форумах поддержки Денвера). Продолжаем работу.
- Сворачиваем браузер и открываем в Проводнике директорию, в которую установили Денвер (если по умолчанию, то C:\WebServers).
- Заходим в директорию home и создаем в ней поддиректорию с именем своего тестового сайта (на который собираетесь устанавливать SMF), к примеру: mysite
- Заходим в mysite и создаем директорию www.
- Распаковываем все файлы из дистрибутива SMF в директорию нашего сайта: C:\WebServers\home\mysite\www
- Распаковываем все файлы из архива с локализацией в ту же папку, с заменой (если система спросит)
- Теперь перезапускаем Денвер, чтобы наш сайт обнаружился и подключился (ярлык Restart Denwer на Рабочем столе)
- Набираем в браузере адрес http://mysite и нажимаем Enter
- Почти наверняка Вы увидите сообщение об ошибке: «Пожалуйста, оповестите вашего хостера о том, что session.save_path указанный в php.ini неверный! Путь необходимо изменить на существующую директорию, которая имеет права на запись».
- Чтобы устранить ошибку, открываем файл C:\WebServers\usr\local\php5\php.ini, находим строчку, о которой говорится в ошибке:
session.save_path = "/tmp" исправляем её на свой путь к папке tmp: session.save_path = "C:\WebServers\tmp"
- Сохраняем изменения и перезагружаем Денвер (внимательные читатели сообразят, что этот шаг можно было бы сделать сразу после распаковки дистрибутивов SMF, для ускорения).
- Обновляем страницу в браузере и убеждаемся, что ошибка исчезла и можно продолжать установку.
- Настройки сервера базы данных — очень важный шаг в процессе установки — здесь в качестве имени пользователя (для подключения к базе данных) указываем root, пароль оставляем пустым (это стандартные настройки Денвера). В качестве названия базы данных рекомендую указать имя сайта — в нашем случае mysite — так удобней для понимания, какая база к какому сайту относится. Всё остальное оставляем без изменения и нажимаем «Продолжить».
- На следующем шаге указываем название нашего тестового форума. Рекомендую придумать что-нибудь оригинальное (хотя не суть важно), вроде «Общество искателей приключений». Устанавливаем чуть ниже галочку напротив опции «Использовать кодировку UTF-8» и переходим к следующему шагу.
- При создании учетной записи используйте одинаковые логин и пароль (для упрощения — ведь это всего лишь тестовый сайт), к примеру: admin/admin (но НИКОГДА НЕ делайте так на настоящем сервере, ради безопасности!).
- E-mail можно указать любой, даже несуществующий — все письма всё равно будут обработаны стандартной заглушкой Денвера (sendmail).
- На последнем шаге ставим галочку для удаления файла install.php и переходим на наш созданный форум.
- Сразу заходим в Админку => Конфигурация => Безопасность и модерирование => Основные настройки и отключаем проверку пароля для администраторов. Это избавит Вас от необходимости ввода пароля при каждом последующем входе в раздел настроек (на локальном сервере это по меньшей мере раздражает).
- Поскольку мы работаем в Windows, то никакие права на папки и файлы менять не надо, поэтому можем сразу приступить к изучению настроек SMF и посмотреть, что за что отвечает.
- При тестировании модов учтите одну вещь: рекомендуется удалять их в обратном порядке. То есть если Вы установили моды А, Б и В друг за другом, то удалять их надо так: В, Б и наконец А. Этим избавите сами себя от возможных ошибок в дальнейшем.
- Кстати, перед началом тестирования рекомендую установить два этих мода: Error Log Counter и Sortable Packages (and Installed Time)
Полезные сведения
- Для более удобной работы с Денвером попробуйте найти в сети утилиты типа Denwer Runner (управление сервисами + редактирование ключевых файлов).
- Если понадобится поработать с базой данных напрямую, то наберите в браузере адрес: http://localhost/Tools/phpMyAdmin/
- Все отправляемые через виртуальные сайты письма сохраняются в директории C:\WebServers\tmp\!sendmail, с расширениями .eml
- Если за время работы с модами Вы столкнетесь с белым экраном, ищите причину его возникновения в логах Денвера: C:\WebServers\usr\local\apache\logs
- И помните, что состояние форума чаще всего можно восстановить, вернув файлы к состоянию до установки того или иного мода (резервные копии в SMF сохраняются в директории /Packages/backups, с именем мода и датой установки).
P. S. Если вздумаете открыть свой тестовый сайт для доступа извне, помните, что Денвер предназначен не совсем для этого. И если не передумаете, то позаботьтесь хотя бы о защите.
Xampp
XAMPP — кроссплатформенная сборка веб-сервера, содержащая Apache, MySQL, интерпретатор скриптов PHP, язык программирования Perl и большое количество дополнительных библиотек, позволяющих запустить полноценный веб-сервер (в сборке имеется даже FTP-сервер).
По сравнению с Денвером, Xampp содержит в себе больше компонентов (оттого и весит больше, напоминая Титана — см. название эпизода) и он изначально более защищен (см. далее).
- Итак, скачиваем дистрибутив Xampp и устанавливаем его.
- После распаковки файлов появится окно командной строки и в нем вопрос «Should I add shortcuts to the startmenu/desktop?» («Добавить ярлыки для запуска в Главное меню/на Рабочий стол?»). Подвердите положительный ответ, нажав Enter.
- На вопрос «Should I make a portable XAMPP without drive letters?» («Сделать переносную версию XAMPP?») можете ответить «y», если собираетесь использовать Xampp с флэшки, перетаскивая его между компьютерами, либо «n» — если хотите запускать Xampp только на текущем компьютере, в виде сервисов.
- Когда появится список из нескольких пунктов, наберите 1 для запуска панели управления сервером. После этого можете закрыть командную строку.
- Рекомендую пока не запускать все сервисы сразу, а попробовать запустить только Apache и MySQL, нажав на кнопки Start справа от каждого из этих пунктов.
- После запуска кнопки Start превратятся в кнопки Stop, а справа от названий компонентов появится слово «Running», означающее активность соответствующих сервисов.
- Кроме этого, станут активными кнопки Admin, предоставляющие доступ к настройкам.
- Открываем в Проводнике директорию C:\xampp\htdocs и создаем директорию с именем нашего тестового сайта (mysite). Заходим в нее и распаковываем туда дистрибутив SMF и локализацию.
- Набираем в браузере адрес http://localhost/mysite и убеждаемся, что всё нормально (перезагружать Xampp НЕ нужно!)
- Однако, согласитесь, после работы с Денвером многим покажется не слишком удобным, что адреса сайтов выглядят так: http://localhost/mysite вместо привычного http://mysite, поэтому можем заняться настройками виртуальных хостов.
- Для этого откроем файл C:\xampp\apache\conf\extra\httpd-vhosts.conf (рекомендую сделать для него ярлык в надежном месте, для быстрого открытия в дальнейшем), раскомментируем 19 строчку:
NameVirtualHost *:80
и вставим в самый конец файла следующий блок:DocumentRoot "C:\xampp\htdocs" ServerName localhost ServerAdmin webmaster@mysite DocumentRoot "C:\xampp\htdocs\mysite" ServerName mysite ServerAlias www.mysite ErrorLog "C:\xampp\htdocs\mysite\error.log" CustomLog "C:\xampp\htdocs\mysite\access.log" combined AllowOverride All Order allow,deny Allow from all - Теперь найдем файл C:\Windows\System32\drivers\etc\hosts и добавим в самый конец следующие строчки:
127.0.0.1 mysite 127.0.0.1 www.mysite
- Таким образом, наш тестовый сайт будет доступен и по адресу http://mysite и по адресу http://www.mysite (кому как удобнее).
- Теперь в панели управления перезапускаем Apache и набираем в браузере привычный адрес: http://mysite. Устанавливаем SMF (используем те же данные, что и при установке SMF на Денвере).
Полезные сведения
- В панели управления Вы можете проставить галочку «Svc» напротив тех компонентов, которые собираетесь запускать в виде сервисов Windows.
- Открыв в браузере страницу http://localhost/xampp/ и выбрав пункт Status, Вы увидите список всех запущенных и отключенных компонентов.
- Если захотите сделать в Xampp такую же отладочную заглушку для sendmail, как и в Денвере, прочтите эту статью
- По адресу http://localhost/security/ можно узнать о том, как улучшить безопасность Xampp.
NIMP
NIMP — сборка из Apache+Nginx+PHP+Mysql+eAccelerator+Sendmail под Windows. Целью является снижение нагрузки на сервер и уменьшение времени отклика благодаря схеме фронтенд-бэкенд. Nginx работает как frontend и предназначен для раздачи статического контента. Apache — в качестве backend для генерации динамического контента. Данная сборка прекрасно подойдет для высоконагруженных сайтов в корпоративных и городских сетях.
- Итак, скачиваем дистрибутив.
- Распаковываем дистрибутив NIMP в желаемый каталог, например, в C:\nimp
- Распаковываем туда же, поверх, бета-версию панели управления. Запускаем её (файл C:\nimp\NimpCP).
- Если при запуске возникла ошибка, скачайте и установите .NET Framework 3.5 (или выше). После этого всё должно запуститься без проблем.
- Итак, панель запущена (см. скриншот). Переходим на вкладку «Виртуальные хосты» и вводим имя тестового сайта: mysite.
- В столбце слева должна появиться строчка mysite.conf
- Выделите её и переместите в правый столбец. В результате в файле C:\Windows\System32\drivers\etc\hosts появится строчка
127.0.0.1 mysite
Согласитесь, гораздо удобнее, чем если бы Вам пришлось редактировать этот файл вручную (как при работе с Xampp). - В директории C:\nimp\htdocs появится папка с именем нашего сайта: mysite (файл index.html, лежащий в этой директории, можно удалить). Распакуем туда дистрибутив SMF и локализацию.
- Теперь переходим на первую вкладку («Процессы») и запускаем все компоненты (Старт Все). Полоски слева от логотипов компонентов должны стать зелеными.
- После этого нажмите на кнопку Localhost. Откроется главная страница NIMP в браузере, на которой Вы можете найти пароль и логин к MySQL. Запомните их или поменяйте на другие (см. Полезные сведения).
- Набираем в браузере адрес нашего тестового сайта http://mysite и устанавливаем SMF.
Полезные сведения
- На вкладке «Конфигурация» в панели управления можно поменять пароль к MySQL, а также включить автозапуск панели при загрузке Windows.
- Доступ к любым элементам панели, а также к настройкам компонентов, входящих в состав NIMP, можно получить из трея. При открытии ключевых файлов (например, php.ini) будет использоваться Notepad2, обеспечивающий подсветку синтаксиса (очень удобная штука).
- Все логи можно найти по адресу C:\nimp\component\logs\site (кнопочка для открытия этой директории доступна из трея)
Uniform Server
Uniform Server — это сборка на основе WAMP (WAMP – Windows, Apache, MySQL, PHP) для запуска полноценного сервера на компьютере с установленной Windows. Пакет очень мал и мобилен (можно хранить и запускать прямо с флэшки), может использоваться для установки рабочего (production/live) сервера. Разработчики могут тестировать с помощью Uniform Server свои приложения, требующие PHP, MySQL, Perl, Apache.
Предупреждаю сразу — это вам не Денвер. И не Xampp. Хотя те, кто привык работать с последним, без труда разберутся с интерфейсом Uniform Server.
- Скачиваем последнюю версию пакета и распаковываем, к примеру, на диск D:
- После распаковки заходим в папку UniServer и создаем внутри нее директорию для своих будущих проектов — projects.
- Затем открываем файл usr\local\apache2\conf\httpd.conf и ищем строку AddDefaultCharset UTF-8, убираем знак решетки перед ней.
- В файле usr\local\php\php.ini находим строчку session.save_path и указываем в ней путь к папке tmp (например, "D:/UniServer/tmp"), убираем знак комментария перед этой строчкой.
- В этом же файле находим строчку mbstring.internal_encoding и меняем её значение на "UTF-8".
- Теперь можно запускать сервер — файл Start.exe внутри папки UniServer. Возле часов появляется синяя иконка с цифрой 1, предоставляющая доступ к панели управления:
- Запускаем сервер (самая верхняя строчка в меню). В браузере автоматически откроется страница http://localhost с приветствием.
- Переходим по ссылке Server Administration и попадаем в святая святых Uniform Server — центр администрирования (Admin Panel).
- Можете посмотреть информацию об установленных компонентах сервера, убедиться, что используются последнии версии, обновиться при желании.
- В разделе Configurations находятся самые важные настройки сервера, которые можно тут же поменять (после изменения настроек необходим перезапуск сервера).
- Доступ к базам данных своих проектов можно получить из раздела Tools » phpMyAdmin
- Для создания тестового сайта переходим в раздел Admin Virtual Host и указываем необходимые сведения: имя сайта (mysite) и его расположение (D:/UniServer/projects/mysite). После нажатия на кнопку Create VHost в соответствующей директории будет автоматически создана директория mysite.
- Распаковываем в mysite содержимое дистрибутива SMF и локализацию. Перезапускаем сервер.
- Набираем в браузере привычный адрес: http://mysite. Устанавливаем SMF (используем те же данные, что и при установке SMF на Денвере).
- При возникновении проблем с кодировкой (знаки вопроса вместо текста) добавьте строчку $db_character_set = 'utf8'; в Settings.php
Полезные сведения
- В директории docs можно найти кучу интересной информации, в том числе об использовании сборки в Windows 7.
- Error Log Viewer (http://localhost/apanel/error_log_viewer.php) — централизованное хранилище всех ошибок, вызванных вашими проектами.
- В отличие от большинства своих конкурентов Uniform Server обновляется регулярно (раз в месяц) и даже содержит в себе сервис проверки обновлений (http://localhost/apanel/update.php).
- По адресу http://localhost/apanel/security.php можно узнать о том, как улучшить безопасность UniServer.
- На официальном сайте сборки можно найти несколько плагинов.
Open Server
Open Server — это портативный локальный WAMP/WNMP сервер, созданный специально для веб-разработчиков. После установки пакета можно выбрать Apache или Nginx в качестве сервера, подключить FTP, настроить почтовую заглушку.
По сути, если вы знакомы с Денвером, то легко приспособитесь и к этому серверу. Тем более на сайте проекта есть понятный мануал. Да и проект к тому же отечественный.
- Как обычно, скачиваем последнюю версию пакета и распаковываем, к примеру, на диск D:
- После распаковки и выполнения первоначальных действий по настройке сервера (обо всём этом написано в документации по установке на сайте продукта) заходим в папку пакета, затем в подпапку html и внутри нее создаем папку с названием тестового домена. Например mysite.ru. Внутри этой папки создаем ещё одну — www. И уже в нее распаковываем дистрибутив SMF с локализацией.
- А дальше всё как по маслу — запускаем панель управления Open Server (exe-файл в корне сервера) и при необходимости меняем настройки на нужные вам:
- Затем в этой же панельке проверяем, находится ли наш сайт в списке и запускаем сервер (самый верхний пункт в меню). В браузере набираем адрес своего сайта (mysite.ru) и устанавливаем SMF:
Полезные сведения
- Доступ к логам, phpMyAdmin, конфигурационным файлам PHP и Apache — всё это можно найти в панели управления.
- При возникновении каких-либо вопросов по работе с Open Server заглядывайте на официальный форум.
Как видите, установка smf — дело довольно несложное... Посмотрите также общий список всех известных сборок...













Спасибо, хотя бы один человек из тысячи обнаружил эту ошибку
Спасибо за обзор. Как-то повелось, что найдя денвер так на нём и остался, а вот теперь любопытно попробовать и другие сборки. Вот ещё бы таблицу сравнений возможностей различных сборок, так сказать для наглядности, но это так, не критично.
Действительно, хорошая идея. Может, на досуге реализую.