Все ленты — последние статьи

Openserver протестировано на Windows Server 2008 r2 x64, выбираем http сервер под Windows

 Чтоб не мараться прикрутить PHP к IIS, поставил Denwer но он начал падать, алтернативу выбрал Openserver и кстати поразил удобным управлением и настройками http://open-server.ru (проект бесплатный) , поэтому поводу не плохо высказывается хабр http://habrahabr.ru/post/144242/ Выбираем WAMP платформу для разработки сайтов под Windows (там варианты AMPPS http://www.ampps.com/  , AppServ http://www.appservnetwork.com/, Denwer, EasyPHP http://www.easyphp.org/ , EleanorServ http://eleanor-cms.ru/server , Nimp http://nimpbox.ru/ , Open Server , Server2go http://www.server2go-web.de/, Uniformserver http://www.uniformserver.com/ USBWebserver http://www.usbwebserver.net/ , Vertrigo http://vertrigo.sourceforge.net/?lang=ru Wampserver http://www.wampserver.com/ Winginx http://winginx.ru/ Xampp USB Lite http://www.apachefriends.org/en/xampp-windows.html#641 )

Ничего не тестировал из всего этого, прилагаю описание Openserver

 

 

 

§1. Архитектура


code

Архитектура расположения каталогов программного комплекса подразумевает под собой чёткое разделение двух различных типов данных: динамических данных пользователя (настройки, временные файлы, логи т.д.) и статичных данных (модули, программы, служебные файлы).

Если говорить простым языком, то в папке modules никакие файлы никогда не изменяются, не создаются и не удаляются, а в папках domains и userdata напротив, данные постоянно меняются. Такая архитектура создана специально для упрощения синхронизации данных между различными копиями комплекса и экономии места при резервном копировании.

§2. Установка и запуск


Установка

Open Server является портативным программным комплексом и не требует установки. Сборку можно разместить на внешнем жёстком диске или флэш-накопителе, это позволит использовать Open Server на любом компьютере, который отвечает системным требованиям.

Дистрибутив представляет собой самораспаковывающийся архив в формате 7ZIP (расширение .exe). Запустите исполняемый файл дистрибутива и выберите путь для распаковки файлов.

Системные требования

  • Необходимый минимум системных ресурсов: 200 Мб RAM и 1 Гб на HDD;
  • Windows (32-bit или 64-bit): Windows 8 / Windows 7 / Windows Server 2008 / Windows Vista / Windows XP SP3;
  • Установленный набор библиотек Microsoft Visual C++ 2005-2008-2010 Redistributable Package x86;

 

Запуск

Для запуска Open Server используйте файл Open Server.exe. При наличии возможности программу следует запускать только от имени администратора. После старта программы вы увидите красный флажок в трее Windows (область возле системных часов). Чтобы включить непосредственно сам веб-сервер нажмите на флажок, далее выберите пункт меню [Меню → Запустить].

Если сервер не запускается перейдите к разделу Решение проблем данного справочного руководства.

Внимание

Перед началом использования Open Server выполните [Меню → Дополнительно → Первый запуск]. Наличие установленного набора библиотек Microsoft Visual C++ 2005-2008-2010 Redistributable Package x86 является обязательным системным требованием, без их наличия Open Server работать не будет.

 

Запуск с CD/DVD

Open Server умеет запускаться с CD/DVD дисков так же как и с обычного HDD диска или flash-накопителя с той лишь разницей, что при работе с оптического диска никакие изменения и файлы после выхода из программы сохранены не будут.

Как известно CD/DVD диск доступен только в режиме чтения, что делает невозможным привычный запуск и использование сервера на таком носителе. В Open Server встроен достаточно простой механизм для выхода из этой ситуации: при запуске сервер копируется во временную папку компьютера, а во время выхода из программы эта папка полностью удаляется. Таким образом вся работа Open Server происходит на компьютере пользователя, а не на оптическом диске.

Запуск с оптических дисков рекомендуется использовать только при создании демонстрационных сборок и автономных программных пакетов (см. Создание сборок).

Установка обновлений

Open Server это достаточно сложный программный комплекс с постоянно совершенствующейся архитектурой. Как таковой процедуры обновления не предусмотрено. При выходе новой версии Open Server необходимо заново выполнить все настройки, скопировать папки ваших сайтов и выполнить перенос баз данных. Не распаковывайте файлы дистрибутива поверх существующей версии, а так же не пытайтесь скопировать файлы конфигурации и профилей из старой версии программы в новую! Поскольку выход новых версий Open Server иногда может быть довольно частым, то не стоит обновлять вашу сборку каждый раз, лучше пропустите несколько версий.

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

Совместимость

Часть новых модулей Open Server (PHP 5.5, MongoDB, Apache 2.4) несовместима с устаревшими операционными системами, такими как Windows XP, Windows 2003, Windows Vista. При использовании таких модулей и запуске сервера на устаревших системах вы получите сообщение об ошибке. Так же следует знать, что некоторые модули могут работать только совместно, например это Apache 2.4 и PHP 5.5.

§3. Подключение


Ниже представлены параметры для подключения к модулям установленные в Open Server по умолчанию. Вы всегда можете самостоятельно изменить эти настройки по своему усмотрению.

Подключение к MySQL

  • Адрес: домен вашего сайта*
  • Порт: 3306
  • Пользователь: mysql
  • Пароль: mysql

 

ROOT подключение к MySQL

  • Пользователь: root
  • Пароль: (пусто)

Информация

Кодировка, установленная по умолчанию в настройках MySQL сервера, не действует на пользователя ROOT. Кодировку нужно будет явно указывать в скриптах подключения к БД, потому использовать пользователя ROOT не рекомендуется.

 

Подключение к PostgreSQL

  • Адрес: домен вашего сайта*
  • Порт: 5432
  • Пользователь: postgres
  • Пароль: (пусто)

 

Подключение к MongoDB

  • Адрес: домен вашего сайта*
  • Порт: 27017
  • Пользователь: (пусто)
  • Пароль: (пусто)

 

Подключение к Memcache

  • Адрес: домен вашего сайта*
  • Порт: 11211


Макс. размер памяти используемой сервером Memcache по умолчанию равен 64 Мб. Данный параметр можно изменить в настройках Open Server [Меню → Настройки → Разное].

Подключение к FTP

  • Адрес: домен вашего сайта*
  • Порт: 21 (990 для FTPS)
  • Пользователь: ftp
  • Пароль: ftp

 

Домен localhost

Если вы хотите использовать привычный адрес localhost для подключения к MySQL, PostgreSQL, FTP или Memcache серверу, то достаточно создать стандартный домен или алиас с именем localhost.

Автоматизация подключения

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

  1. Локально создать пользователя базы данных с теми же именем, паролем и привилегиями, что используются на удалённом сервере.
  2. Создать алиас с тем же именем, что используется в качестве хоста базы данных на удалённом сервере.


---
* Например, если ваш скрипт размещен по адресу test.server.local/mysql.php, то хостом (адресом) MySQL, PostgreSQL, FTP и Memcache сервера будет домен: test.server.local

§4. Домены и алиасы


Режимы управления доменами

В Open Server существует три режима управления списком доменов: автопоиск, ручное управление и ручное+автопоиск. По умолчанию используется первый режим автоматического подключения папок из корневой директории указанной в настройках.

Как работает автопоиск

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

Как работает совмещённое управление (ручное + автопоиск)

При использовании совмещенного режима управления доменами программа сначала подключает домены созданные вручную, после чего производится автоматическое сканирование по процедуре описанной выше.

Создание домена в автоматическом режиме

Чтобы создать домен или поддомен откройте [Меню → Папка с сайтами] и создайте папку с именем будущего домена. После создания домена перезапустите сервер.

Создание домена в ручном режиме

Чтобы создать домен или поддомен перейдите в раздел [Меню → Настройки → Домены] и создайте запись вида: домен => папка. В качестве папки домена можно выбрать уже существующую папку на диске или создать её непосредственно в окне выбора каталога. После создания домена сохраните настройки.

Создание кириллического домена

Open Server поддерживает кириллические домены, однако будьте внимательны, папку с доменом нужно называть его реальным именем, а не псевдо названием на кириллице. Для пиво.рф реальным названием (punycode формат) будет xn--b1altb.xn--p1ai и создав такой домен вы получите доступ к http://пиво.рф. Для конвертации доменных имён в punycode формат и обратно используйте [Меню → Дополнительно → IDN конвертер].

Создание поддомена

Процесс создания поддомена аналогичен процедуре создания обычного домена. При создании только поддомена доступность основного домена существующего в сети Интернет не теряется, т.е. вы сможете работать с локальным поддоменом имея при этом доступ к рабочему домену в сети Интернет.

Создание алиаса

Чтобы создать алиас перейдите в раздел [Меню → Настройки → Алиасы] и создайте запись вида: исходный домен => конечный домен. После создания алиаса сохраните настройки.

Обратите внимание — создание алиаса вида *.xxx.xx не означает то, что вам станут доступны любые домены вида test.xxx.xx, mail.xxx.xx и т.д. Всё равно необходимо создать конкретный алиас или домен чтобы он стал доступен, это особенность операционной системы Windows.

Иконка сайта в меню доменов

При наличии корректного файла favicon.ico в корневой папке домена иконка сайта будет отображаться в меню программы.

Ограниченный режим работы

В некоторых случаях управление доменами и алиасами недоступно (см. Ограниченный режим).

Веб-инструменты

Открыть стартовую страницу со ссылками на домены и списком инструментов можно дописав приставку /openserver/ к любому существующему локальному домену. Например: http://localhost/openserver/

§5. Работа с MySQL


Создание пользователя MySQL

  1. Откройте [Меню → Дополнительно → PHPMyAdmin]
  2. Введите имя пользователя root без пароля (по умолчанию)
  3. В PHPMyAdmin откройте раздел [Привилегии]
  4. Нажмите ссылку [Добавить нового пользователя]
  5. Заполните форму и нажмите кнопку [Создать пользователя]

Информация

В том случае, если помимо прочих привилегий для пользователя будет отмечена привилегия SUPER, то кодировка, установленная по умолчанию в настройках MySQL сервера, не будет на него действовать. Кодировку нужно будет указывать в ваших скриптах персонально для каждого подключения к MySQL, потому отмечать привилегию SUPER не рекомендуется.

 

Создание базы данных MySQL

  1. Откройте [Меню → Дополнительно → PHPMyAdmin]
  2. Используйте для входа root без пароля (по умолчанию)
  3. В PHPMyAdmin откройте раздел [Базы данных]
  4. Введите название новой базы данных и выберите её кодировку
  5. Нажмите кнопку [Создать]

 

Как войти в PHPMyAdmin / MySQL менеджер

  1. Откройте [Меню → Дополнительно → PHPMyAdmin / MySQL менеджер]
  2. Введите имя пользователя root без пароля
  3. Нажмите кнопку [Вход]

 

Указание кодировки подключения к MySQL серверу

  1. <?php
  2. здесь ваш php код подключения к mysql серверу
  3. далее вставьте строки указанные ниже
  4. mysql_query("set names cp1251");
  5. mysql_query("set character_set_server=cp1251");
  6. ?>

Кодировка cp1251 — русская, её можно заменить на имя любой нужной вам кодировки.

Переключение модулей баз данных

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

Длительное подключение к MySQL (более 1 сек)

Перед началом использования Open Server следует отключить протокол IPv6 через [Меню → Закладки → Фиксы реестра → Отключение IPv6]. Если этого не сделать, то процесс подключения в MySQL серверу может выполняться очень долго (более 1 сек) и скорость выполнения php скриптов вас не порадует.

§6. Работа с Path


Для добавления собственных путей в переменную окружения PATH можно использовать файл ./userdata/config/path.txt

Пути необходимо добавлять по одному вписывая каждый с новой строки, например:

C:\Windows
D:\My Programs
%realprogdir%\data\dll
C:\Windows\System32

Информация

По умолчанию файл path.txt не подключается. См. [Меню → Настройки → Сервер].

 

Использование переменных в качестве подстановок

ПеременнаяОписание переменной
%realprogdir% Реальный путь до папки с Open Server (обратный слеш "\")
%progdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (обратный слеш "\")
%sprogdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (слеш "/")
%dprogdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (двойной обратный слеш "\\")
%dsprogdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (двойной слеш "//")
%realsitedir% Реальный путь до корневой папки доменов (обратный слеш "\")
%sitedir% Генерируемый путь до корневой папки доменов с учетом виртуального диска (обратный слеш "\")
%ssitedir% Генерируемый путь до корневой папки доменов с учетом виртуального диска (слеш "/")
%httpport% Порт HTTP сервера
%httpsport% Порт HTTPS сервера
%postgresqlport% Порт PostgreSQL сервера
%mysqlport% Порт MySQL сервера
%mongodbport% Порт MongoDB сервера
%memcacheport% Порт Memcache сервера
%ftpport% Порт FTP сервера
%httpdriver% Название модуля HTTP
%phpdriver% Название модуля PHP
%mysql_driver% Название модуля MySQL / MariaDB
%pg_driver% Название модуля PostgreSQL
%mongo_driver% Название модуля MongoDB
%memcachedriver% Название модуля Memchache
%dnsdriver% Название модуля DNS
%ip% IP адрес сервера
%disk% Буква диска из генерируемого пути до папки с Open Server с учетом виртуального диска (только буква)
%osdisk% Буква диска из реального пути до папки с Open Server (только буква)
%sysdisk% Системный диск Windows (только буква)

§7. DNS сервер


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

Для использования встроенного DNS сервера необходимо выполнить настройку сетевого интерфейса на каждом компьютере ДО запуска самого сервера. Выполнить настройку необходимо как на локальной машине, так и на других компьютерах в локальной сети, которые хотят получить доступ к вашим доменам. Без указания локального DNS сервера в настройках сетевого подключения запуск сервера будет невозможен (если модуль DNS активирован в настройках Open Server).

По умолчанию параметр TTL установлен в значение 60 (секунд), вы можете изменить это значение в файле ./userdata/init.ini однако следует иметь ввиду, что бездумное изменения TTL может спровоцировать кэширование неактуальных записей другими компьютерами в вашей сети. Изменяйте этот параметр только в том случае, если вы действительно понимаете его предназначение.

Рекомендации по настройке

  1. В качестве IP адреса сервера выберите в настройках Open Server IP адрес вашего компьютера в локальной сети или сети Интернет (не выбирайте параметр Все доступные IP).
  2. Откройте свойства нужного сетевого подключения:

    Центр управления сетями → Подключение xxx → Свойства → Протокол Интернета версии 4 → Свойства → Общие → Использовать следующие адреса DNS-серверов.

    Пропишите следующие адреса NS серверов:

    xxx.xxx.xxx.xxx
    8.8.8.8 (или любой другой реальный резервный DNS)
    

    Вместо xxx.xxx.xxx.xxx впишите IP адрес вашего компьютера в локальной сети или сети Интернет.
     
  3. Повторите процедуру настройки на других компьютерах в локальной сети.
  4. Не выполняйте настройку алиасов из инструкции раздела Внешний доступ данного руководства. Подобная настройка не требуется, поскольку удалённые компьютеры будут напрямую работать с вашим DNS сервером и получат доступ ко всем доменам.
  5. Сохраните настройки и выполните запуск сервера Open Server.


После правильной настройки все компьютеры в вашей локальной сети смогут получить доступ к доменам Open Server.

Обслуживание реальных доменов

Для обслуживания локальным DNS сервером реальных доменов в сети Интернет внесите в DNS настройки каждого из доменов следующую запись (параметры domain.ru и ip нужно заменить на имя домена и IP адрес сервера с Open Server соответственно):

# Настройки вносятся в панели управления у компании-регистратора домена
# Для DNS на базе серверов регистратора
ns1.domain.ru. 3600 IN A ip
# Для DNS на базе сервера Open Server
ns1.domain.ru → ip

§8. Планировщик заданий


Использование планировщика заданий (Сron)

Значения времени вводятся в виде цифр, комбинации цифр или *.
Вы можете задать моменты времени, используя запятые как разделители:

Например: 1,2,3
Результат: задание выполняется 3 раза, в 1-ю,2-ю и 3-ю минуты часа.


Вы можете указать диапазон, используя дефис:

Например: 5-7
Результат: задание выполняется 3 раза, в 5-ю,6-ю и 7-ю минуты часа.


Вы можете задать периодичность выполнения используя звездочку (*) и слэш (/):

Например: */2
Результат: задание выполняется каждые 2 минуты.


Вы можете комбинировать способы для создания точного расписания:

Например: 1,5,11-15,30-59/2
Результат: задание выполняется в 1,5, с 11 по 15 и каждые 2 минуты с 30 по 59.


Вышеприведённая схема указания времени актуальная для всех временных периодов (минута, час, число, месяц, день недели). Для запроса URL в планировщике нужно использовать вспомогательную утилиту Wget (см. примеры). В строке команд можно использовать подстановки.

Использование переменных в качестве подстановок

ПеременнаяОписание переменной
%realprogdir% Реальный путь до папки с Open Server (обратный слеш "\")
%progdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (обратный слеш "\")
%sprogdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (слеш "/")
%dprogdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (двойной обратный слеш "\\")
%dsprogdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (двойной слеш "//")
%realsitedir% Реальный путь до корневой папки доменов (обратный слеш "\")
%sitedir% Генерируемый путь до корневой папки доменов с учетом виртуального диска (обратный слеш "\")
%ssitedir% Генерируемый путь до корневой папки доменов с учетом виртуального диска (слеш "/")
%httpport% Порт HTTP сервера
%httpsport% Порт HTTPS сервера
%postgresqlport% Порт PostgreSQL сервера
%mysqlport% Порт MySQL сервера
%mongodbport% Порт MongoDB сервера
%memcacheport% Порт Memcache сервера
%ftpport% Порт FTP сервера
%httpdriver% Название модуля HTTP
%phpdriver% Название модуля PHP
%mysql_driver% Название модуля MySQL / MariaDB
%pg_driver% Название модуля PostgreSQL
%mongo_driver% Название модуля MongoDB
%memcachedriver% Название модуля Memchache
%dnsdriver% Название модуля DNS
%ip% IP адрес сервера
%disk% Буква диска из генерируемого пути до папки с Open Server с учетом виртуального диска (только буква)
%osdisk% Буква диска из реального пути до папки с Open Server (только буква)
%sysdisk% Системный диск Windows (только буква)

Пример запланированного задания (запрос файла cron.php по HTTP и сохранение ответа во временный файл чтобы не скапливался мусор):

Время: */30 * * * *
Выполнить: %progdir%\modules\wget\bin\wget.exe -q --no-cache http://xxx.ru/cron.php -O %progdir%\userdata\temp\temp.txt


Пример запланированного задания (выполнение cron.php интерпретатором PHP):

Время: */30 * * * *
Выполнить: %progdir%\modules\php\%phpdriver%\php-win.exe -c %progdir%\userdata\temp\config\php.ini -q -f %sitedir%\xxx.ru\cron.php

 

Предопределенные переменные планировщика

ПеременнаяОписание переменной
%hh% Текущий час (00-23)
%mm% Текущая минута (00-59)
%ss% Текущая секунда (00-59)
%MM% Текущий месяц (01-12)
%MMM% Текущий месяц (Янв-Дек)
%DD% Текущий день (01-31)
%WW% Текущий день недели (Пн-Вс)
%WD% Текущий день недели (1-7, 1-понедельник, 7-воскресенье)
%YYYY% Текущий год (4 цифры)
%YY% Текущий год (последние 2 цифры)
%QUOTE% Порт HTTP сервера
%PERCENT% Порт HTTPS сервера

Кроме того, в качестве переменных планировщика можно использовать любые переменные среды окружения (environment variables), например %COMSPEC%.

Вызываем командный интерпретатор, чтобы выполнить команду:

Время: 0 * * * *
Выполнить: %COMSPEC% /c del /S /Q c:\temp\*


Переменная %COMSPEC% в данном случае будет развёрнута в C:\Windows\system32\cmd.exe

Особенности планировщика заданий

Очень важно понимать, что планировщик заданий (cron) это не командная строка и не консоль. Планировщик лишь запускает программу с указанными в задании параметрами. Таким образом те программы, которые которые могут работать только в консоли, так же необходимо запускать через консоль и в самом планировщике.

Например, такое задание не будет выполнено (неправильная запись):

%realprogdir%\modules\database\%mysql_driver%\bin\mysqldump.exe -A -a --add-drop-database --opt --host=%ip% --user=root > %realprogdir%\%DD%_%MM%_%YYYY%_%hh%_%mm%_dump.sql


А теперь посмотрите на правильный вариант записи задания:

%COMSPEC% /c %realprogdir%\modules\database\%mysql_driver%\bin\mysqldump.exe -A -a --add-drop-database --opt --host=%ip% --user=root > %realprogdir%\%DD%_%MM%_%YYYY%_%hh%_%mm%_dump.sql


Вышеуказанное правильное задание при выполнении планировщиком будет развёрнуто в следующую команду:

C:\Windows\system32\cmd.exe /c C:\OpenServer\modules\database\MySQL-5.3.1\bin\mysqldump.exe -A -a --add-drop-database --opt --host=127.0.0.1 --user=root > C:\OpenServer\09_01_2013_14_25_dump.sql

Информация

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

§9. Меню закладок


Для быстрого доступа к нужным страницам на сайтах и рабочим папкам, для запуска и выполнения любых программ и команд в Open Server существует возможность создавать закладки.

Виды закладок

  • Ссылка
  • Папка
  • Программа (возможен запуск с параметрами)
  • Команда в формате командной строки Windows

 

Использование переменных в качестве подстановок

ПеременнаяОписание переменной
%realprogdir% Реальный путь до папки с Open Server (обратный слеш "\")
%progdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (обратный слеш "\")
%sprogdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (слеш "/")
%dprogdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (двойной обратный слеш "\\")
%dsprogdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (двойной слеш "//")
%realsitedir% Реальный путь до корневой папки доменов (обратный слеш "\")
%sitedir% Генерируемый путь до корневой папки доменов с учетом виртуального диска (обратный слеш "\")
%ssitedir% Генерируемый путь до корневой папки доменов с учетом виртуального диска (слеш "/")
%httpport% Порт HTTP сервера
%httpsport% Порт HTTPS сервера
%postgresqlport% Порт PostgreSQL сервера
%mysqlport% Порт MySQL сервера
%mongodbport% Порт MongoDB сервера
%memcacheport% Порт Memcache сервера
%ftpport% Порт FTP сервера
%httpdriver% Название модуля HTTP
%phpdriver% Название модуля PHP
%mysql_driver% Название модуля MySQL / MariaDB
%pg_driver% Название модуля PostgreSQL
%mongo_driver% Название модуля MongoDB
%memcachedriver% Название модуля Memchache
%dnsdriver% Название модуля DNS
%ip% IP адрес сервера
%disk% Буква диска из генерируемого пути до папки с Open Server с учетом виртуального диска (только буква)
%osdisk% Буква диска из реального пути до папки с Open Server (только буква)
%sysdisk% Системный диск Windows (только буква)

При создании закладок на [запуск программ с параметрами] разделителем пути до программы и параметрами запуска является знак #, иначе закладка будет выполнена через командную строку!

Примеры создания закладки:

# Пример 1 (ссылка)
Имя: Мой сайт
Выполнить: http://xxx.ru
# Пример 2 (запуск программы с параметрами)
Имя: MySQL менеджер
Выполнить: %realprogdir%\modules\heidisql\heidisql.exe#-h=%firstsite% -u=root -P=%mysqlport%

§10. Меню программ


Добавление portable программы

При использовании Full версии Open Server существует возможность добавить в меню свою портативную программу. Для этого необходимо выполнить следующие действия:

  1. Откройте папку с нужной вам категорией программ в подпапке ./progs/ и создайте в ней папку с именем вашей портативной программы
  2. Скопируйте вашу портативную программу вместе с её папками и файлами в созданный вами каталог
  3. Перезапустите программу Open Server (не сервер)

Внимание

Имя папки с программой и имя портативной программы (без расширения) должны быть идентичны!

 

Добавление категории программ

Чтобы добавить собственную категорию в меню программ следует создать одноимённую папку в директории ./progs/. Программы добавленные в папку Default отображаются сразу в меню программ, без категории.

Добавление ярлыка программы

Помимо портативного софта в меню программ можно добавить ярлыки на локально установленные программы. Такой указатель на программу будет отображаться в меню вместе с другими программами и будет работать как самый обычный ярлычок в меню. Чтобы добавить ярлык на локально установленную программу просто скопируйте его в папку ./progs/нужная_вам_категория_программ/.

Внимание! Не пытайтесь копировать в меню портативных программ непрограммные ярлыки на папки, сайты и т.д. Такие ярлыки не будут отображаться в меню и соответственно не будут работать. Для создания ярлыков к сайтам, папкам и т.д. используйте [Меню → Настройки → Закладки] (см. Меню закладок).

§11. Старт/стоп скрипты


Дополнение сценариев запуска и остановки сервера

В Open Server существует возможность дополнять сценарии запуска и остановки сервера своими .bat файлами (батниками).

Чтобы дополнить сценарий запуска необходимо создать файл-шаблон /userdata/[pre_]start.tpl.bat, чтобы дополнить сценарий остановки соответственно нужно создать файл-шаблон /userdata/[post_]stop.tpl.bat. Вы можете записать в такие файлы произвольные последовательности команд, предназначенных для исполнения командным интерпретатором Windows.

Перед запуском

Выполнение файла /userdata/pre_start.bat (шаблон: /userdata/pre_start.tpl.bat) происходит ДО запуска всех модулей. Файл должен корректно отработать и завершиться, иначе сервер будет ожидать его выполнения бесконечно.

После запуска

Выполнение файла /userdata/start.bat (шаблон: /userdata/start.tpl.bat) происходит ПОСЛЕ запуска всех модулей, но до того, как флаг состояния станет зеленым. Файл должен корректно отработать и завершиться, иначе сервер будет ожидать его выполнения бесконечно.

Перед остановкой

Выполнение файла /userdata/stop.bat (шаблон: /userdata/stop.tpl.bat) происходит ДО остановки модулей. Файл должен корректно отработать и завершиться, иначе сервер будет ожидать его выполнения бесконечно.

После остановки

Выполнение файла /userdata/post_stop.bat (шаблон: /userdata/post_stop.tpl.bat) происходит ПОСЛЕ остановки модулей, но до того, как флаг состояния станет красным. Файл должен корректно отработать и завершиться, иначе сервер будет ожидать его выполнения бесконечно.

Использование переменных в качестве подстановок

В файлах-шаблонах с расширением .tpl.bat можно использовать подстановки. Доступные варианты подстановки программных переменных:

ПеременнаяОписание переменной
%realprogdir% Реальный путь до папки с Open Server (обратный слеш "\")
%progdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (обратный слеш "\")
%sprogdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (слеш "/")
%dprogdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (двойной обратный слеш "\\")
%dsprogdir% Генерируемый путь до папки с Open Server с учетом виртуального диска (двойной слеш "//")
%realsitedir% Реальный путь до корневой папки доменов (обратный слеш "\")
%sitedir% Генерируемый путь до корневой папки доменов с учетом виртуального диска (обратный слеш "\")
%ssitedir% Генерируемый путь до корневой папки доменов с учетом виртуального диска (слеш "/")
%httpport% Порт HTTP сервера
%httpsport% Порт HTTPS сервера
%postgresqlport% Порт PostgreSQL сервера
%mysqlport% Порт MySQL сервера
%mongodbport% Порт MongoDB сервера
%memcacheport% Порт Memcache сервера
%ftpport% Порт FTP сервера
%httpdriver% Название модуля HTTP
%phpdriver% Название модуля PHP
%mysql_driver% Название модуля MySQL / MariaDB
%pg_driver% Название модуля PostgreSQL
%mongo_driver% Название модуля MongoDB
%memcachedriver% Название модуля Memchache
%dnsdriver% Название модуля DNS
%ip% IP адрес сервера
%disk% Буква диска из генерируемого пути до папки с Open Server с учетом виртуального диска (только буква)
%osdisk% Буква диска из реального пути до папки с Open Server (только буква)
%sysdisk% Системный диск Windows (только буква)

Кроме написания команд перечисленные подстановки можно использовать для указания реальных переменных окружения, например:

setx DIR_PHP "%realprogdir%\modules\php\%phpdriver%"


Нужно понимать, что файлы с расширением .tpl.bat являются только шаблонами .bat файлов и не будут выполнятся. В процессе запуска или остановки сервера файлы-шаблоны будут преобразованы в исполняемые .bat файлы в той же папке с заменой переменных-подстановок и уже эти готовые .bat будут отправлены на выполнение.

Внимание

После начала процедуры завершения работы Windows запуск любых новых процессов невозможен, поэтому СТОП-скрипты (stop.bat и post_stop.bat) не выполняются. Если вам требуется обязательное выполнение скриптов остановки, то необходимо выключать Open Server вручную непосредственно перед тем, как вы хотите выключить компьютер.

§12. Ограниченный режим


При недоступном на запись HOSTS файле (как правило такое происходит в случае запуска программы без прав администратора) программа переходит в ограниченный режим работы с урезанной функциональностью.

В ограниченном режиме вам будет недоступна следующая функциональность:

  • Использование своих алиасов и доменов (кроме домена localhost);
  • Указание IP адреса сервера (кроме адресов 127.0.0.1 и *);


Таким образом в ограниченном режиме вам будет доступен один из двух IP адресов: 127.0.0.1 или *, и только один домен localhost. Другие созданные вами алиасы и домены не будут обработаны программой.

Работать в ограниченном режиме можно только при полном отсутствии прав администратора. Если же у вас есть возможность запускать программу с нужными правами, то рекомендуется непременно этим воспользоваться. В случае, если вы постоянно забываете запускать программу с необходимыми правами, включите опцию [Требовать учётную запись Администратора].

Если в логах запуска вы видите сообщение о том что Hosts файл недоступен для записи и Open Server запущен с правами администратора, то это означает что доступ к этому файлу блокируется антивирусами/файерволами (даже для доверенных программ) либо действуют ограничения прав доступа Windows.

Добавьте Open Server, а так же все остальные компоненты о которых будет спрашивать антивирус/файервол, в доверенные программы. Отключите защиту HOSTS файла (или системных файлов) в настройках вашего антивируса/файервола, если такая защита присутствует. Попробуйте удалить файл C:\Windows\System32\Drivers\etc\hosts и заново создать со следующим содержимым:

127.0.0.1 localhost


В случае работы без прав администратора, но с доступным на запись HOSTS файлом, программа работает в нормальном режиме без каких-либо ограничений. Разрешить запись в HOSTS файл для всех пользователей можно выполнив через консоль (запускать от имени Администратора) следующую команду:

attrib -s -r -h -a C:\Windows\system32\drivers\etc\hosts

Внимание

При включённой службе контроля учётных записей пользователей (UAC) и запуске без прав администратора Open Server не будет иметь доступа к HOSTS файлу и автоматически перейдёт в ограниченный режим работы.

 

Запуск без внесения записей в HOSTS файл

В Open Server реализована возможность полноценного запуска без внесения записей в HOSTS файл. Эта возможность будет полезна пользователям офисных сетей и терминалов, где доступ к HOSTS файлу имеет только старший администратор. Если опция [Не вносить изменения в HOSTS файл] включена, то запуск сервера происходит без редактирования HOSTS файла, т.е. доступ к этому файлу не требуется вовсе.

Следует знать и понимать, что во время запуска программа делает DNS запрос к каждому созданному вами домену и если в HOSTS файле не будет записи любого из доменов, то это приведёт к ошибке [Сбой запуска]. Не забывайте обращаться к администратору вашей сети после каждого создания домена, администратор должен внести нужные записи в HOSTS файл, иначе вы не сможете запустить сервер.

Формат внесения записей в HOSTS файл стандартный — ip пробел домен, например:

192.168.5.10 rhino.acme.com
192.168.5.10 x.acme.com

§13. Внешний доступ


Работа с внешними сетями

Open Server может работать в локальных сетях и сети Интернет как веб-сервер. Для работы в сети Интернет необходим статический(белый) IP адрес. Чтобы открыть доступ к серверу извне необходимо указать * в качестве IP адреса в настройках Open Server, в этом случае доступ откроется сразу для всех сетей, к которым подключён ваш компьютер. Если вы хотите открыть доступ только для одной конкретной сети (например локальной), то укажите в настройках программы IP адрес выданный вашему компьютеру в этой сети.

Информация

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

 

Доступ извне к локальными доменам

После того, как вы настроите удалённый доступ к своему серверу, все локальные домены станут доступны удалённо. Но как их открыть? Чтобы открыть нужный сайт с удалённой машины потребуется внести в HOSTS файл такого компьютера запись с адресом вашего локального домена, например: 64.55.96.24 supersite (где 64.55.96.24 это адрес вашего компьютера, а supersite это имя локального домена). После внесения такой записи в HOSTS файл на удалённом компьютере домен supersite будет доступен при обычном наборе в строке браузера.

Обратите внимание — при простом наборе IP адреса вашего компьютера http://64.55.96.24/ или при попытке доступа к несуществующему локальному домену будет открываться пустая страница.

Чтобы при наборе IP адреса вашего компьютера открывался определенный локальный сайт, можно создать алиас вида ваш_внешний_ip => ваш_локальный_домен. После этих действий указанный вами локальный домен, для которого вы создали алиас, станет доступен через локальную сеть или сеть Интернет по адресу http://ваш_внешний_ip/ (например http://64.55.96.24/). Если ваш компьютер подключен к нескольким сетям и в настройках сервера установлен IP=*, то такой алиас необходимо создать для каждого IP адреса выданного вашему компьютеру в каждой из сетей.

Безопасность компьютера

При работе с внешними сетями нет никакой гарантии безопасности вашего компьютера. Сервер запускается с правами Администратора, а значит, скрипты, запущенные под его управлением, могут делать на компьютере всё, что угодно. Дыры в безопасности скриптов могут открыть хакерам доступ к вашему компьютеру. Мы не рекомендуем такое использование Open Server! Перед настройкой удалённого доступа к серверу обязательно ознакомьтесь с разделом Защита сервера данного справочного руководства.

§14. Внешнее управление


Open Server может принимать некоторые команды через сеть Интернет, для этого имеется встроенная панель управления которая работает на выделенном порту. Так же программой можно управлять через командную строку.

Управление через Интернет

Чтобы получить доступ к панели управления необходимо набрать адрес http://localhost:1515/ (по умолчанию). Порт, логин и пароль к контрольной панели можно указать непосредственно в настройка Open Server [Меню → Настройки → Разное]. Панель управления доступна на любом IP адресе с которого доступен ваш компьютер, а так же на любом локальном домене из созданных на сервере. Для управления программой через Интернет ваш внешний IP адрес должен быть "белым", т.е. доступным из сети Интернет.

Команды для использования в командной строке

"C:\openserver\Open Server.exe" # запуск программы
"C:\openserver\Open Server.exe" /start # запуск сервера
"C:\openserver\Open Server.exe" /restart # перезапуск сервера
"C:\openserver\Open Server.exe" /stop # остановка сервера
"C:\openserver\Open Server.exe" /exit # выход из программы

§15. Защита сервера


Настройка защиты

Когда сервер открыт для доступа из сети Интернет он становится крайне уязвимым, особенно с настройками которые установлены по умолчанию. Множество пауков и вирусов постоянно сканируют Интернет на предмет открытых портов и, как правило, незащищенный сервер оказывается взломанным уже через несколько часов после появления в сети.

Несколько шагов по защите веб-сервера от несанкционированного доступа:

  1. Смените стандартные пароли FTP пользователя [Меню → Настройки → FTP сервер];
  2. Установите собственные пароли для root (и других) пользователей всех модулей СУБД;
  3. Включите защиту веб-инструментов и диска от доступа из внешних сетей в настройках программы [Меню → Настройки → Сервер];
  4. Теперь перезапустите саму управляющую программу (не сервер);
  5. Выполните настройку фаервола закрыв на доступ извне ВСЕ порты кроме тех, которые планируется использовать (например: 80,443,21,990,53);

Внимание

Веб-сервер работает от имени администратора вашего компьютера, при работе на внешних IP адресах или IP = * безопасность вашего компьютера будет под угрозой! Не допускайте использования уязвимых скриптов, некорректной конфигурации модулей, простых паролей.

 

Встроенная защита от внешнего доступа

Выбор опции [Защитить сервер от внешнего доступа] отключит часть опасных функций PHP, доступ к веб-инструментам извне будет заблокирован, а доступ к диску для PHP скриптов будет ограничен корневой папкой доменов. Данная опция снижает производительность PHP скриптов в 3-4 раза.

§16. Работа с Pear и Composer


Установка Pear

Чтобы выполнить установку Pear запустите сервер и выполните [Меню → Дополнительно → Консоль], после чего наберите в консоли команду go-pear и следуйте дальнейшим командам установщика.

Установка Composer

Composer совместим со всеми модулями PHP начиная с версии 5.3. Чтобы выполнить установку Composer запустите сервер и выполните [Меню → Дополнительно → Консоль], затем перейдите в папку с тем сайтом, куда планируется установка Composer (например: cd C:\openserver\domains\localhost). После того, как вы оказались в папке с нужным сайтом, наберите в консоли команду composer init и сформируйте файл конфигурации Composer (composer.json). Когда файл composer.json будет сформирован, наберите в консоли команду composer install и дождитесь установки выбранных проектов, а так же их зависимостей. В будущем вы можете выполнять обновление установленных проектов командой composer update, например:

cd C:\openserver\domains\localhost & composer update -v

 

Установка проектов Composer

  1. Выполните [Меню → Дополнительно → Консоль];
  2. Перейдите в папку с тем сайтом, куда планируется установка проекта;
  3. Выполните установку любого нужного вам проекта, например:

 

# Переход в папку с проектом
cd C:\openserver\domains\localhost
# Установка Symfony
composer create-project symfony/framework-standard-edition symfony
# Установка PHPUnit
composer create-project phpunit/phpunit phpunit & echo @php -d output_buffering=0 phpunit\phpunit.php %*>phpunit.bat
# Установка Laravel
composer create-project laravel/laravel laravel --prefer-dist
# Установка phpDocumentor
composer create-project phpdocumentor/phpdocumentor phpdocumentor


В будущем чтобы обновить установленный таким образом проект достаточно перейти в папку с нужным проектом и выполнить команду composer update:

cd C:\openserver\domains\localhost\phpunit & composer update

§17. Работа в консоли


Для запуска встроенной консоли необходимо запустить сервер и выполнить [Меню → Дополнительно → Консоль]. Среда окружения (англ. Environment) формируется в момент запуска сервера и передаётся всем запускаемым модулям. Любые другие программы, будь то консоль или IDE, так же могут получить правильное окружение, достаточно запускать эти программы из меню Open Server. Для этого можно либо сделать закладку, либо добавить ярлык в меню программ (см. разделы Меню закладок и Меню программ).

Необходимо знать, что если вы запускаете консоль или любую другую программу из стандартного меню Пуск или с ярлыка на рабочем столе, а не из меню Open Server, то они не смогут работать с виртуальным окружением сформированным в Open Server.

Встроенную консоль можно запустить даже если сервер выключен, в Full версии выполните [Меню → Программы → Интернет → Консоль]. Однако при выключенном сервере среда окружения не сформирована и поэтому работать из консоли с PHP и другими модулями или программами (Pear, Composer, скриптами и т.д.) будет невозможно.

Важные особенности

Если вы сначала запустили консоль и только потом запустили сервер, то среда окружения НЕ станет доступна в консоли. Чтобы начать полноценную работу с модулями после запуска сервера нужно закрыть и заново открыть консоль, поскольку только при активном сервере консоль получает правильно сформированное окружение в момент запуска из меню. Точно так же среда окружения не будет обновлена в консоли если вы переключились на другой модуль PHP или MySQL и перезапустили сервер, но при этом не перезапустили консоль!

§18. Фиксы реестра


Фиксы предлагаются к самостоятельной установке из меню Open Server в числе закладок созданных по умолчанию. Так же вы можете найти фиксы в папке ./modules/system/ и применить их самостоятельно.

Фикс реестра для отключения IPv6

Данное исправление позволяет отключить все компоненты IPv6, кроме интерфейса замыкания на себя. Фикс также указывает Windows предпочитать протокол IPv4 протоколу IPv6 путем изменения записей в таблице политик префиксов. Применять данный фикс рекомендуется только тем пользователям, которые используют домен localhost и при этом Open Server не имеет прав записи в файл Windows\System32\Drivers\etc\hosts.

Фикс реестра для настройки поведения системы

Данное исправление позволяет настроить поведение системы во время завершения работы Windows. Фикс отключает автоматическое завершение процессов и увеличивает таймаут ожидания (после которого процесс считается зависшим) до 30 секунд.

Фикс реестра для оптимизации работы SSD

Данное исправление позволяет отключить Link Power Management (LPM) и DIPM в драйверах SATA AHCI. Использование LPM с SSD дисками часто приводит к возможности возникновения "фризов" в работе операционной системы, от небольших подвисаний до полного зависания системы. Для предотвращения износа SSD данный фикс отключает службы Superfetch и Prefetch, а так же обновление времени последнего доступа к файлам в NTFS.

Не следует применять фикс если в системе не используются SSD диски. Пользователям ноутбуков следует применять фикс осмысленно, поскольку энергопотребление дисков немного увеличится, что сократит время работы ноутбука от батареи.

Фикс реестра для тюнинга TCP

Данное исправление оптимизирует значения TcpTimedWaitDelay и MaxUserPort в результате чего ваша система сможет работать быстрее и с большим количеством TCP подключений. В частности исчезнет проблема с торрентами: невозможно выполнить операцию на сокете, т.к. буфер слишком мал или очередь переполнена. Так же смогут нормально работать и другие программы создающие большое количество одновременных TCP подключений.

Фикс драйвера TCPIP для Windows XP

Half-open limit fix предназначен для изменения максимального количества одновременных полуоткрытых исходящих TCP соединений (half-open connections или connection attempts) в системном файле tcpip.sys. Ограничение заключается в том, что компьютеру не разрешается иметь более 10 одновременных полуоткрытых исходящих соединений. Таким образом, фактически ограничена скорость подключения к другим компьютерам. Патч позволяет убрать это ограничение, то есть увеличить максимальный предел полуоткрытых соединений. Для подавляющего большинства пользователей будет достаточным предел, равный 100. Патч применим для устаревших версий Windows x32 и x64: XP, 2003 Server, Vista. Начиная с версий Windows Vista SP2 и Windows 7 необходимости применять патч нет и в случае запуска он сообщит вам о невозможности установки.

Внимание

После применения фиксов следует обязательно перезагрузить компьютер.

§19. Вопросы и ответы


Ничего не запускается?

Не стоит отчаиваться, загляните в общий лог программы и другие логи компонентов [Меню → Просмотр логов]. В подавляющем большинстве случаев там вы найдете причину неудачного старта. В более сложных случаях включите опцию [Запускать сервер в отладочном режиме], это позволит увидеть отладочную информацию при запуске. Так же добавьте Open Server в доверенные программы вашего файервола или антивируса, если таковой имеется.

Пишет что порт 80, 3306 и т.д. уже занят!

Включите в настройках Open Server опцию [Запускать сервер в агрессивном режиме], в этом режиме все программы занимающие нужные порты будут принудительно закрыты. Добавьте Open Server в доверенные программы вашего антивируса/файервола/прокси-сервера или отключите слежение за портами 80/443/21/90xx/3306 если оно есть. В отдельных антивирусах/файерволах возможны свои доп. настройки связанные с перехватом подключений программ к сети.

Пишет что нет прав доступа для работы в этой папке!

Вы пытаетесь запустить Open Server из папки, которая принадлежит другому пользователю, или же файлы Open Server были записаны на компьютер другим пользователем. Если Open Server будет запускаться пользователем Pavel (например), то войдите в систему под учётной записью Pavel и скопируйте Open Server в такую папку, которая принадлежит пользователю Pavel (имеются права на запись), после чего запуск сервера для этого пользователя станет возможным. Вместо копирования можно установить особые права доступа к папке с Open Server, обратитесь к администратору вашего компьютера.

Почему кнопки серые и не нажимаются?!

В любой момент времени активны только те кнопки и разделы меню, которые могут выполнить возложенное на них действие. Например: если сервер не запущен, то пункт меню PHPMyAdmin будет неактивен; если сервер запущен, то кнопки очистки логов будут недоступны и т.д.

Я не могу открыть меню когда флаг желтого цвета!

Желтый флажок говорит о том, что происходит выполнение команды (например запуск, остановка или сохранение настроек). Во время выполнения команд меню программы недоступно.

Создал 3000 доменов и теперь сервер не запускается!

Увеличьте кол-во проверок состояния сервера до 20-30 или выше в настройках программы [Меню → Настройки → Разное]. Переключитесь на использование HTTP модуля Apache если вы используете модуль Nginx.

Хочу протестировать сайт с учётом разных скоростей интернета (мобильные устройства к примеру)!

В Open Server существует возможность ограничения скорости передачи данных для симуляции медленной загрузки сайта. Для ограничения скорости воспользуйтесь меню Open Server: [Меню → Настройки → Разное]. Скорость можно ограничить в пределах 1-40 КБайт в секунду, установка значения в 0 или более 40 отменяет ограничение. Скоростной лимит устанавливается на каждый запрос, поэтому, если клиент одновременно откроет 4 картинки на сайте (4 соединения), то каждая из них будет загружаться с заданной скоростью.

Где редактировать настройки модулей?

Для редактирования настроек модулей пользуйтесь меню Open Server: [Меню → Дополнительно → Конфигурация].

Куда сохраняются мои письма?

По умолчанию все письма сохраняются во временную папку userdata/tmp/email/, во время остановки сервера эта папка не очищается. Можно настроить отправку писем через удалённый SMTP сервер: [Меню → Настройки → Почта].

Я нажимаю в меню программы на нужный сайт, но ничего не открывается!

Для работы многих пунктов меню требуется наличие корректно установленного и работающего браузера по умолчанию. Так же вы можете напрямую указать свой браузер в настройках программы: [Меню → Настройки → Меню].

Я создал домен local_site.loc, но он не работает!

Символа подчеркивания не может быть в имени домена, поэтому такой домен не подключается. Разрешенные символы: [a-z0-9.-].

Сервер не стартует с ip 192.168.0.1 и говорит что localhost работает только на ip 127.0.0.1!

Действительно, домен localhost можно использовать только с ip адресом 127.0.0.1, поэтому либо переименуйте этот домен, либо удалите его, если он вам не нужен.

Я хочу работать без виртуального диска!

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

Я не вижу виртуального диска!

Если вы работаете не под учётной записью администратора, но Open Server запущен с правами администратора, то виртуальный диск (если он используется) будет для вас недоступен. Open Server при этом будет работать нормально. Вы можете отключить использование виртуального диска в настройках, при этом учитывайте требования к абсолютному пути описанные в предыдущем ответе.

Сервер запускается, но браузер говорит что домен не найден!

Если в вашем браузере настроена работа через прокси сервер, то локальные сайты будут ему недоступны. Чтобы исправить ситуацию откажитесь от использования прокси в вашем браузере или добавьте локальные домены и IP адрес сервера в список исключений для прокси в настройках обозревателя. В ряде случаев нужно пересоздать файл HOSTS (см. Решение проблем).

Для чего нужна настройка вывода закладок вместо сайтов?

В таком режиме созданные закладки отображаются вместо списка доменов, это будет полезно при создании демо-сборок с установленными скриптами (см. Создание сборок).

Мне трудно пересоздавать закладки, пользователей FTP и т.д, нужно их просто отредактировать!

Не нужно пересоздавать записи заново, просто сделайте двойной клик на интересующей вас записи в таблице после чего эта запись сразу же удалится из списка и будет вынесена обратно в поля редактирования. Не забудьте добавить отредактированную запись обратно в таблицу!

Подключение к базе данных длится более 1 сек!

Отключите использование протокола IPv6 используя инструкцию из раздела Решение проблем данного руководства.

Я скопировал в папку с доменом свой скрипт, после перезапуска сервер не видит файлов и показывает ошибку!

Скорее всего вы скопировали или создали такую подпапку в папке с доменом, имя которой подпадает под условия автоматического поиска корневой папки домена (см. Домены и алиасы).

Сервер постепенно занял всё место на диске!

Постепенное исчезновение свободного места говорит о том, что вы отключили автоочистку логов при запуске сервера. В результате при активном использовании сервера лог-файлы вырастают до огромных размеров и занимают всё свободное место на диске. Очистите лог-записи в окне просмотра логов и включите автоочистку логов при старте в настройках Open Server. Очистите папку .\userdata\tmp от временных файлов.

Как мне создать собственную конфигурацию хоста для домена?

Используйте шаблон конфигурации виртуального хоста в папке с нужным доменом для создания особой конфигурации домена. При создании/изменении файла требуется перезапуск сервера. Шаблон конфигурации для нужного модуля можно найти в папке ./userdata/config/.

Например, если вы хотите создать собственную конфигурацию домена xxx.ru для модуля Apache-2.4.2, то скопируйте файл ./userdata/config/Apache-2.4.3_vhost.conf в папку с нужным доменом, отредактируйте этот файл под свои нужды и перезапустите сервер.

Или другой пример, при использовании модуля Apache+Nginx можно скопировать в папку домена оба файла конфигурации для каждого сервера: Apache-2.2.23+Nginx-1.2.4_vhosta.conf и Apache-2.2.23+Nginx-1.2.4_vhostn.conf.

Обратите внимание — при редактировании конфигурации хоста нельзя удалять или заменять системные переменные %…%, вы можете вносить только новые записи дополняющие конфигурацию.

Как и где редактируются конфиги компонентов?

В Open Server используются файлы-шаблоны конфигурации, которые доступны через общее меню программы. Не пытайтесь редактировать временные файлы конфигов, которые создаются в момент запуска сервера, это не имеет смысла. Шаблоны конфигурации индивидуальны для каждого модуля, т.е. если вы выберите какой-либо из модулей в качестве активного, то будут активированы и шаблоны настроек именно этого модуля. Например: вы сконфигурировали шаблон файла php.ini при активном модуле PHP 5.2, после чего выбрали модуль PHP 5.3 в качестве активного. В этом случае вам необходимо еще раз сконфигурировать шаблон файла php.ini уже для модуля PHP 5.3.

Сами шаблоны настроек для всех модулей и инструментов хранятся в папке ./userdata/config/, их нельзя использовать как реальные конфиги и указывать при запуске модулей, консолей и скриптов. В процессе запуска шаблоны конфигурации проходят через парсер, который заменяет все переменные-подстановки на реальные данные и сохраняет уже готовые файлы конфигурации в папку ./userdata/temp/config/.

Как указать особые настройки подключения к SMTP серверу для выбранного домена?

В Open Server существует возможность отправки почты через сторонний SMTP сервер, при этом все домены используют те параметры подключения, которые были указаны пользователем в окне настроек Open Server. Для того чтобы определённый домен мог использовать собственные настройки подключения к SMTP серверу нужно указать их в шаблоне конфигурации этого хоста. Откройте шаблон конфигурации виртуального хоста (как его создать описано в предыдущем ответе) в папке с нужным доменом и добавьте в описание хоста следующее содержимое (одной строкой):

php_admin_value sendmail_path "%mailway% -t --smtp-ssl=none --smtp-server=smtp.xxx.xx --smtp-port=xx --smtp-from=Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра. --smtp-user=Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра. --smtp-pass=xxxxxx --pop3-server=pop3.xxx.xx --pop3-user=Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра. --pop3-pass=xxxxxx"


Например:

  1. <VirtualHost *:%httpport%>
  2. %limit%
  3. DocumentRoot "%hostdir%"
  4. php_admin_value sendmail_path "%mailway% -t --smtp-ssl=none --smtp-server=smtp.xxx.xx --smtp-port=xx --smtp-from=Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра. --smtp-user=Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра. --smtp-pass=xxxxxx --pop3-server=pop3.xxx.xx --pop3-user=Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра. --pop3-pass=xxxxxx"
  5. </VirtualHost>

Последнюю часть строки --pop3-server=pop3.xxx.xx --pop3-user=Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра. --pop3-pass=xxxxxx добавляйте только в том случае, если требуется авторизация POP3 перед SMTP. Возможные значения для параметра --smtp-ssl= это none,auto,ssl или tls.

Необходимо помнить, что при указании собственных настроек подключения к SMTP серверу отправка почты для выбранного домена будет работать не зависимо от основных настроек Open Server. Так же обратите внимание на то, что все данные SMTP сервера включая логин и пароль будут доступны в php скриптах и видны в информации phpinfo(), поэтому в целях безопасности не рекомендуется пользоваться описанной возможностью указания настроек отправки почты в конфиге хоста.

§20. Решение проблем


Ниже представлен порядок действий необходимых для решения проблем с запуском сервера. После выполнения каждого действия необходимо повторить пробный запуск сервера, а в случае сбоя запуска можно переходить к выполнению следующего пункта.

  1. Выполните [Меню → Дополнительно → Первый запуск]. По желанию можно согласиться на внесение фиксов в реестр.
  2. Убедитесь что IP адрес, заданный в настройках, существует (кроме [*]). Так же убедитесь что все другие настройки программы корректны.
  3. Добавьте Open Server в доверенные программы вашего файервола/антивируса или настройте их должным образом, если таковые имеются.
  4. Запустите [Меню → Просмотр логов], попробуйте найти причину проблемы и устранить её (если это возможно).
  5. Включите в настройках Open Server опцию [Запускать сервер в отладочном режиме] и попробуйте найти причину проблемы и устранить её (если это возможно).
  6. Выполните через консоль (запускать от имени Администратора) следующую команду: attrib -s -r -h -a C:\Windows\system32\drivers\etc\hosts
  7. Активируйте службу DNS если она отключена и запустите её, отключите все службы в имени которых присутствует IIS.
  8. Отключите глобальные прокси и проксификаторы если они установлены на вашем компьютере.

Информация

Очень распространённая проблема это занятый порт 80, занимает его обычно программа Skype. Для устранения проблемы перейдите в [Настройки Skype → Дополнительно → Соединение] и снимите галочку с пункта [Использовать порты 80 и 443 в качестве альтернативных].

 

Контроль учётных записей пользователей (UAC)

При включённой службе контроля учётных записей пользователей (UAC) и запуске без прав администратора Open Server не будет иметь доступа к HOSTS файлу и автоматически перейдёт в ограниченный режим работы. Как правило, об ограниченном режиме сигнализирует наличие только одного домена localhost в меню программы, в то время как ранее были созданы и другие домены. Чтобы исправить ситуацию включите опцию [Требовать учётную запись Администратора] в настройках Open Server и перезапустите программу, либо отключите контроль учётный записей (UAC).

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

  1. Использование встроенного DNS сервера (настройка согласно Руководства);
  2. Активация опции [Не вносить изменения в HOSTS файл] + ручное редактирование этого файла;
  3. Установить разрешающие права записи в HOSTS файл для всех пользователей Windows;
  4. Отказ от возможности управления доменами и работа с единственным доменом localhost;

§21. Создание сборок


Что это такое и зачем это нужно?

Например: у вас есть свой сайт, скрипт или своя CMS, которые нужно представить для ознакомления будущим клиентам, показать заказчику или попросту сделать демонстрационный пакет для своего программного продукта. Нужно чтобы ваш программный продукт работал одинаково хорошо у всех, в одинаковой конфигурации, уже был установлен и готов для работы или ознакомления. В этом вам поможет Open Server!

Вы сможете создать готовый мини-сервер с установленным скриптом, CMS системой, сайтом, проектом и т.д., а будущим пользователям или клиентам останется его только скачать и запустить! Ваш продукт будет изначально работоспособен, не потребуется искать для него сервер, не нужно будет выполнять установку, настройку и т.д. Более того, демонстрационные материалы можно раздавать клиентам на CD/DVD диске. Open Server умеет запускаться с таких носителей как и с обычного HDD диска или flash-накопителя с той лишь разницей, что при работе с оптического диска никакие изменения и файлы после выхода из программы сохранены не будут.

Как создать демонстрационную сборку

  1. Скачайте дистрибутив Open Server Mini последней версии и распакуйте его во временную папку. Перейдите в папку куда был распакован дистрибутив и запустите программу Open Server.exe.
  2. Удалите ненужные модули в папке ./modules/php/*, ./modules/database/* и ./modules/http/* оставив в папках только по одному модулю, которые будут использоваться для вашего программного продукта. Если вы не планируете использовать модули DNS и Memcached, то папки с этими модулями так же можно удалить: ./modules/dns/* и ./modules/memcached/* соответственно.
  3. Нажмите [Меню → Настройки] и выберите для использования те модули, которые вы не удалили. Установите IP адрес сервера в значение 127.0.0.1, отключите [Автоматическую проверку обновлений], не отключайте опцию [Автоматически определять потребность в виртуальном диске]. Установите все другие нужные вам настройки.
  4. Нажмите [Меню → Дополнительно → Конфигурация] и настройте шаблоны конфигурации нужных модулей под ваш продукт (скрипт/сайт/cms), если это необходимо.
  5. Запустите сервер и установите ваш программный продукт (скрипт/сайт/cms) на домен localhost, который присутствует в Open Server по умолчанию. Выполните необходимые действия по настройке скрипта после чего выйдите из всех форм авторизации где вы авторизовались (например: личный аккаунт, администрирование и т.д.).
  6. Нажмите [Меню → Настройки] и создайте закладки для основных страниц вашего программного продукта (например: Админ-панель, Личный аккаунт, Главная страница). Включите в настройках Open Server опцию [Показывать закладки вместо сайтов]. Теперь остановите сервер и сохраните настройки.
  7. Нажмите [Меню → Выход] и переименуйте файл программы согласно имени вашего продукта, например ./временная папка/Open Server.exe в ./временная папка/MegaCMS Server.exe.
  8. Сейчас вы можете добавить в сборку документацию по своему продукту в виде .chm файла. Файл необходимо скопировать в папку ./modules/system/docs/, позже он будет отображаться в меню [Дополнительно → Документация].
  9. Теперь упакуйте содержимое временной папки в самораспаковывающийся архив или запишите её содержимое на CD/DVD диск. Выбор зависит лишь от предполагаемой формы распространения сборки.


Персональная демонстрационная сборка для вашего программного продукта готова!

Вышеописанным способом вы можете подготавливать не только демонстрационные сборки, но и dev-пакеты для разработчиков, презентации сайтов, архивы порталов, интерактивные материалы на CD и т.д.