Как начать работу с локальным сервером Open Server
76
В этом выпуске вы найдёте обзор и подробные инструкции по установке и настройке сервисной платформы Open Server. Благодаря этой платформе веб-разработчик может в условиях имитации реального сервера отладить код и плагин, а также провести различные работы над сайтом.
Назначение Open Server
На сайте разработчиков говорится, что Open Server (https://open-server.ru/) является портативной серверной платформой и программной средой, созданной специально для веб-разработчиков с учётом их рекомендаций и пожеланий.
Платформа, работающая под Windows, предназначена для отладки кода до того, как его используют на реальном проекте, чем невероятно полезна и удобна для разработчиков. Это может быть отладка как кода, так и плагина, а также обновление существующих CMS.
Например, когда мне нужно проверить работоспособность плагина, скрипта или обновить CMS, я поступаю таким образом:
- делаю свежий бэкап (резервную копию) существующего проекта и разворачиваю его локально;
- обновляю или выполняю определённые правки в коде;
- проверяю, всё ли корректно работает;
- выкатываю на рабочий сайт.
Установка платформы
1. Выбираем подходящую для нас версию Open Server и скачиваем пакет тут: https://open-server.ru/download/. Для моей работы достаточно пакета Basic (пакеты Premium и Ultimate, включающие полезные программы, можно найти тут: https://open-server.ru/#progs). Если вы внесёте пожертвование, скачивание займёт у вас 5 минут, если же бесплатно — более двух часов

2. Затем запускаем установку пакета двойным кликом. Файл дистрибутива (версия 5.2.5) выглядит так:

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


Компоненты сборки представлены в 32-битной и 64-битной версиях.
Запуск, настройка и применение Open Server
1. Чтобы запустить программную среду, кликните по нужной версии 64 или 86 (32-битная). В трее у вас появится красный флажок:

При нажатии на него открывается меню:

2. В этом меню выберите «Запустить», после чего активируются все компоненты и другие пункты меню:

В меню собрано всё необходимое для работы с платформой: список сайтов, ссылки на Консоль (собраны в «Дополнительно»), инструменты работы с базами данных, файлы конфигурации.
3. Пункт «Настройки» позволяет настроить платформу под ваши нужды. Самым интересным для меня является пункт Модули:

Как видите, тут можно выбрать конфигурации вашего сервера: Apache, Nginx, PHP, MySQL. Таким образом можно имитировать реальный сервер, на котором в дальнейшем будет жить ваш сайт и/или скрипт.
Чтобы начать работать с кодом, нужно:
- создать домен в папке «OpenServer/domains», например, test.local;
- прямо в корне этой папки создать файл с расширением .php;
- перезапустить Open Server;
- найти и открыть свой test.local в подменю «Мои сайты».
Сайт будет запущен в браузере, который установлен у вас по умолчанию.
Кстати, по умолчанию в папке «OpenServer/domains» есть папка «Localhost» с файлом index.php, и если в браузере прописать https://localhost/, вы увидите такую страницу:

Это и есть содержимое index.php. Вы можете использовать эту папку для работы со своими сайтами и скриптами. Но когда у вас несколько проектов (сайтов), то, конечно, под каждый из них лучше создавать по папке-домену.
Дальше можно делать практически всё то же, что и на обычном сервере:
- развернуть чистый дистрибутив любой CMS;
- написать свой скрипт и отладить его;
- развернуть бэкап сайта, обновить на нём CMS до последней версии и/или поставить плагины и проверить, чтобы они не конфликтовали между собой;
- примерить новый шаблон или написать свой — в общем, всё что душе угодно.
Единственное, что такой сайт вы не сможете никому показать, просто скинув на него ссылку. Но зато ваш тестовый сайт всегда можно перенести на реальный домен/сервер или скинуть на флешку и передать, например, вашему коллеге или принести его с работы домой.
Более подробная информация по установке, компонентах и работе с Open Server представлена на официальном сайте.
Я в свою очередь хочу поблагодарить всех тех, кто работал над созданием этого замечательного инструмента. А всем читателям нашего блога желаю удачи в, возможно, первых шагах к веб-разработке.
Есть вопросы? Пишите в комментариях под этой статьёй!

Пришла с небольшими знаниями в настройке, установке и принципах работы нескольких CMS. С тех пор «обросла» знаниями и опытом в разработке сайтов на следующих CMS, PHP и JS/CSS-фреймворках: WordPress, Joomla, Bitrix, MODx, Drupal, Codeigniter, Laravel, Bootstrap.
Разрабатывает, дорабатывает, перерабатывает и адаптирует сайты.
Девиз: если очень захотеть, можно в космос полететь
Оцените мою статью:
Задайте их прямо сейчас, и мы ответим в течение 8 рабочих часов.
11 комментариев к статье “ Как начать работу с локальным сервером Open Server ”
Вам не жалко своего времени на написание капитанских статей? На странице с доками все расжевано и разложено по полочкам.
Извините, если обидел, но подобным трешаком половину инета завалено, зачем его еще засорять?
То, что очевидно для одних, может не являться таковым для других — например, как этот факт для меня и для Вас.
Ну я к примеру вообще не знал, что такая программа существует. Может быть потому что я не вебмастер. Спасибо за статью.
2018-01-18 17:01:00 ———————————————
2018-01-18 17:01:00 Начало процедуры запуска сервера
2018-01-18 17:01:00 Невозможно занять порт 3306 поскольку он уже используется: mysqld.exe
2018-01-18 17:01:00 Сбой запуска!
ПОМОГИТЕ. что сделать? Если можно пришлите ответ на мой аккаунт abdulazizmannopov07@gmail.com пожалуйста
Я не разработчик данного приложения, а такой же пользователь.
Поэтому рекомендую поискать ответ на форуме OpenServer
https://ospanel.io/forum/ и в документации https://ospanel.io/docs/
При включении сайта через браузер выдает такие ошибки : Warning: mysql_fetch_assoc() expects parameter 1 to be resource, array given; Warning: Division by zero in; Код : $d1 = mysql_query(«SELECT default_gold_in_bank FROM (1 ошибка)
$k_d_ratio = round ($kills_print / $deaths_print, 3); (2 ошибка)
Степан, эти уведомления не имеет отношения к теме статьи и к OpenServer. Тут проблемы в самом коде:
Division by zero — деление на ноль и т.д.
Попробуйте поискать ответ в мануале PHP (http://php.net/) по указанным функциям.
пропал из трея флажок. Не могу запустить Опен сервер
Не могу изменить в настройках версию PHP5,6 на PHP7/
Выдаёт:
2019-01-17 10:25:31 ———————————————
2019-01-17 10:25:31 Начало процедуры запуска сервера
2019-01-17 10:25:31 Модуль Apache-2.4 может работать только с PHP 5.5 или PHP 5.6
2019-01-17 10:25:31 Сбой запуска!
Подскажите, пжл, как решить?
как открыть готовый wp сайт на open server. раньше сам смог но сейчас не как несмогy спомнить, и в гугле не смог найти полноценный и подходящий статью
Добрый день, всё зависит от того, новый или рабочий сайт на WordPress.
Вот инструкция по которой нужно следовать если у вас новый сайт на WordPress:
1. Скачать и установить OpenServer — https://ospanel.io/download/
2. Скачать и разархивировать WordPress — https://ru.wordpress.org/download/
3. Создать новый домен для тестового сайта, например (test-site) в папке domains которую создаст установщик OpenServer.
4. Переместить разархивированные файлы из папки wordpress (она создастся при разархивированнии) в папку «test-site».
5. Перейти по адресу — http://127.0.0.1/openserver/phpmyadmin/index.php и создать новую Базу Данных для WordPress (логин — root, пароль не нужен).
6. В папке test-site найдите файл «wp-config-sample.php» переименуйте его в «wp-config.php», дальше откройте файл и настройте доступы к Базе Данных.
define( ‘DB_NAME’, ‘тут_имя’ ); // Имя вашей базы данных
define( ‘DB_USER’, ‘тут_имя_пользователя’ ); // Имя пользователя (по умолчанию root)
define( ‘DB_PASSWORD’, ‘тут_пароль’ ); // Пароль от БД (по умолчанию оставить пустым, т.к. OpenServer не создает пароль пользователя)
define( ‘DB_HOST’, ‘localhost’ ); // Имя сервера MySQL
7. Перейти по адресу test-site, если выдается страница поиска то добавьте вконце слеш, чтобы получилось test-site/
8. У вас появится страница установки WordPress.
Если же у вас уже есть сайт на WordPress и Вам нужно открыть его в локально, то все правила выше также действенны,
единственное, что нужно будет изменить, это доступы к Базе Данных и надо будет импортировать файл .sql, который есть в файле резервной копии,
которую вы скачаете из своего хостинга, в новую базу данных (которую вы создадите при помощи пункта 5).
Перед этим нужно внести изменения в файл .sql, для того чтобы изменить существующую ссылку на ссылку на локальном сервере к примеру (test-site).
Откройте файл .sql в редакторе кода. Используйте функцию заменить (replace) редактора кода, для того чтобы изменить ссылку рабочего сайта на ссылку на локальном сервере.
Есть и более элегантные варианты замены рабочего URL на локальный URL (с вариантом выше, бывают проблемы), но это будет информации на целую статью
Open Server, создание домена, базы данных и простого приложения на php

В этом посте я опишу, настройку домена, создание базы данных, и простого скрипта с использованием Open Server — платформы WAMP для веб разработчика. Итак поехали..
Давайте создадим новый тестовый домен, базу данных и подключимся к ней. Для этого, нажимаем правой кнопкой на флажок в трее, выбираем пункт «Папка с сайтами«, открывается папка, в которой хранятся все данные по нашим доменам.
По-умолчанию путь этой директории: C:\Progr\OpenServer\domains\

Папка с доменами
Те кто работал до этого на Denwer-e не должны испытать трудностей с пониманием структуры. Тем кто не работал объясню: это корневая папка, в которой хранятся другие папки, название которых совпадает с именем домена по которому мы будем заходить.
Например, сразу после установки Open Server, мы можем зайти по адресу http://localhost

Проверка работы Open Server-а
Так вот, скрипты которые запустятся, находятся именно в папке:
C:\Progr\OpenServer\domains\localhost\

Папка со скриптами домена localhost
Теперь мы хотим создать домен http://itrem, так же хотим создать базу itrem, подключиться к ней и выполнить какие-нибудь SQL команды.
а) Создаем папку C:\Progr\OpenServer\domains\itrem\, она будет являться нашим доменом, т.е. http://itrem

Добавляем папку itrem
б) В ней создаем файл index.php открываем его в редакторе, например в Notepad++, который можно запустить из контекстного меню Open Server-а, раздела «Офис«

и пишем в нем следующий, проверочный код

Создаем index файл в папке домена
в) Перезапускаем сервер

Перезапуск Open Server-а
в случае успешного запуска, в разделе «Мои сайты«, вы увидите наш сайт itrem

Список доступных доменов
Если же Вам не удалось увидеть список сайтов после проделанных манипуляций, попробуйте следующий вариант запуска: Open server, ограничение на работу с файлом hosts
г) Проверяем работу сайта в браузере, заходим по адресу: http://itrem

Проверка работы домена itrem в браузере
Обратите внимание, что в некоторых браузерах (например Chrome) необходимо задавать адрес включая название протокола ( т.е. http://itrem, а не itrem) иначе он просто перекинет вас на поиск гугла, с именем домена в качестве ключевого слова.
д) Входим в phpmyadmin.
Он находится по адресу: http://localhost/openserver/phpmyadmin/index.php (так же он доступен из контекстного меню OpenServer-а, пункт «Дополнительно>PhpMyAdmin«)

Для авторизации используем такие данные:
- пользователь/пароль = root / -пустой пароль-
- пользователь/пароль = mysql / mysql
Можно использовать оба варианта, но я бы рекомендовал второй, а именно mysql/mysql, т.к. для супер пользователя не применяются некоторые настроенные конфиги, например не устанавливается автоматически кодировка соединения с базой, поэтому при его использовании нужно дополнительно, в скриптах писать, что-то типа: mysql_query(‘SET NAMES «utf8″‘) либо использовать php функцию: mysql_set_charset(‘utf8’).
Связанно это с тем, что суперпользователям не устанавливается кодировка, через параметр init-connect, который обычно прописывается в секции [mysqld], конфигурационного файла my.cnf (подробнее тут: 10.1.5. Configuring the Character Set and Collation for Applications). В данный момент именно так настроен OpenServer.
Так же, я писал пост, про то, как убрать авторизацию на совсем, пост тут: Openserver, phpmyadmin автовход
е) Создаем базу itrem

Создаем таблицу в phpMyAdmin
ж) Создаем таблицу messages

Создаем таблицу messages
следующим шагом, указываем какие нам нужны поля (часть столбцов, я пропустил там оставляем значения по-умолчанию)

Создание структуры таблицы messages
нажимаем Сохранить.
Если Вам проще будет выполнить SQL код (на вкладке SQL) можете просто его скопировать отсюда:
ж) пишем такой код, в файл C:\Progr\OpenServer\domains\itrem\index.php
Внимание: Код написанный ниже не будет работать на версиях PHP 7.0+, т.к. в этих версиях удалена поддержка семейства функций mysql_*. Для корректной работы, либо поставьте в настройках OpenServer-а версию PHP < 5.5, либо используйте код из этой статьи «Пример создания простого приложения на php и mysql 2018», где я рассказал, как работать с базой данных еще проще (не надо писать запросы), используя ORM Idiorm.
Обратите внимание на кодировку файла, она должна быть «UTF-8 без BOM», проверить в Notepad++ это можно в верхнем меню, в разделе «Кодировки«. При создании этого поста, я попался в эту ловушку, и долго не мог понять в чем проблема, подробнее тут: Openserver, MySQL, Notepad++ и пропадающая кириллица
Лучше использовать MySQLi, но в большинстве учебников пишут про работу именно с старыми MySQL функциями, поэтому тут используем именно такой код. Ознакомиться с MySQLi после изучения MySQL функций, можно, например тут: MySQLi раскладываем все по полочкам. У кого будет желание, перепишите этот скрипт на MySQLi, выложите на pastebin и пришлите мне ссылочку в комментарии — добавлю в пост с указанием вашего авторства :).
з) проверяем в браузере

Тестовый скрипт в браузере
На этом наш маленький тест закончился: мы создали новый домен, базу данных, таблицу в ней, а так же написали скрипт, который работает с этой базой данных.
—[добавлено 10.02.2014 ]—
Записал небольшое видео к данному уроку, смотреть «на весь экран»:
—[добавлено 03.08.2016 ]—
Добавил пост с скриншотами всех вкладок одной из последних версия Openserver: Список вкладок Openserver
—[добавлено 04.07.2018]—
Ввиду того, что семейство функций mysql_* устарело, написал новый пост «Пример создания простого приложения на php и mysql 2018», там рассказал, как работать с базой данных еще проще (не надо писать запросы), используя ORM Idiorm.
Похожие статьи
281 комментарий
У меня после всех манипуляций Open Server выдаёт в браузере:
( ! ) Fatal error: Uncaught Error: Call to undefined function mysql_connect() in C:\OSPanel\domains\itrem\index.php on line 10
( ! ) Error: Call to undefined function mysql_connect() in C:\OSPanel\domains\itrem\index.php on line 10
Call Stack
# Time Memory Function Location
1 0.1060 358000
Dump $_SERVER
$_SERVER[‘REMOTE_ADDR’] =
string ‘127.0.0.1’ (length=9)
$_SERVER[‘REQUEST_METHOD’] =
string ‘GET’ (length=3)
Dump $_SESSION
$_SESSION[‘*’] =
undefined
Dump $_REQUEST
И всё! Что не верно?
Отвечу тут, но у тебя сильно специфичная ситуация, поэтому лучше создай отдельную ветку на форуме .
1) Если под пользователем сайта, ты понимаешь пользователя который может войти на сайт через site.com/wp-admin, то всего скорее просто кто-то зарегистрировался. Удалить лишние учетки ты можешь через админку WP, раздел «Пользователи». Если ты имеешь ввиду пользователя которому принадлежат файлы сайта (обычно имя для входа в админку совпадает с этим пользователем), то это не относится к веб-серверу, а относится к операционной системе. Чтобы найти его в Windows надо зайти в свойства файла, затем на вкладку «Безопасность», там кнопка «Дополнительно» и там будет пункт «Владелец» (для созданных тобой файлов совпадает с именем входа в систему).
2) Для того, чтобы WP обновлялся, надо зайти в админке WP в раздел «Консоль > Обновления» и там нажать кнопку «Проверить снова». Ниже этой кнопки будет надпись, что-то типа «Доступно обновление» или «У Вас свежая копия WP»
Если останутся вопросы, пиши на форум, в отдельную ветку, твоя проблема всего скорее не относится к OpenServer.
Добрый вечер!
Помогите, пож-та, понять в чем проблема. В браузере почему-то не выполняются команды, которые задаются в редакторе, т.е. надпись ‘Hello world», и другие команды, как в вашем примере отображается так:
>?php //phpinfo(); echo ‘
Hello,world!
‘; echo print ‘
Hello!
‘ echo ‘Здравствуйте!’; /* Многострочный комментарий */
Пробовала переключать ctrl+U — выводится код страницы, как в редакторе, может это тоже какой-то «режим».
Операции (сложения/вычитание и прочее) тоже не выполняет, просто выводит, как в редакторе, только за исключением html кодов, таких как , . Их выполняет. Не могу найти нигде решение этой проблемы.
Openserver доступ из интернета
Open Server может работать в локальных сетях и сети Интернет как веб-сервер. Для работы в сети Интернет необходим статический(белый) IP адрес. Чтобы открыть доступ к серверу извне необходимо указать * в качестве IP адреса в настройках Open Server, в этом случае доступ откроется сразу для всех сетей, к которым подключён ваш компьютер. Если вы хотите открыть доступ только для одной конкретной сети (например локальной), то укажите в настройках программы IP адрес выданный вашему компьютеру в этой сети.
Доступ извне к локальными доменам
После того, как вы настроите удалённый доступ к своему серверу, все локальные домены станут доступны удалённо. Чтобы открыть нужный сайт с удалённой машины потребуется внести в HOSTS файл такого компьютера запись с адресом вашего локального домена, например: 64.55.96.24 supersite (где 64.55.96.24 это адрес вашего компьютера, а supersite это имя локального домена). При простом наборе IP адреса вашего компьютера http://64.55.96.24/ или при попытке доступа к несуществующему локальному домену будет открываться пустая страница.
Чтобы при наборе IP адреса вашего компьютера открывался определенный локальный сайт, можно создать алиас вида ваш_внешний_ip => ваш_локальный_домен . После этих действий указанный вами локальный домен, для которого вы создали алиас, станет доступен через сеть Интернет по адресу http://ваш_внешний_ip/ (например http://64.55.96.24/). Если ваш компьютер подключен к нескольким сетям и в настройках сервера установлен IP=*, то такой алиас необходимо создать для каждого IP адреса вашей машины в каждой из сетей.
Безопасность компьютера
При работе с внешними сетями нет никакой гарантии безопасности вашего компьютера. Сервер запускается с правами Администратора, а значит, скрипты, запущенные под его управлением, могут делать на компьютере всё, что угодно. Дыры в безопасности скриптов могут открыть хакерам доступ к вашему компьютеру. Мы не рекомендуем такое использование Open Server! Перед настройкой удалённого доступа к серверу обязательно ознакомьтесь с разделом Защита сервера данного справочного руководства.
Есть следующие сайты на OpenServer
Внешний IP, предположим: 82.111.222.333
Как и что сделать, чтобы на эти все сайты можно было зайти из интернета?
Хотелось бы, чтоб можно было обратиться вот так:
На данный момент могу привязать через alias только один сайт. Т.е. вбив 82.111.222.333 откроется один из сайтов test , в зависимости, что привяжу.
А хочется всё и сразу
1 ответ 1
Я поанализировал некоторые факты:
При обращении по адресу myIP/domain не открывается нужный сайт, хотя по логике должен, ведь для IP адреса dev.testN.ru это папка, которую он должен открывать.
Если есть папка localhost и в ней различные сайты, то в адресной строке можно обращаться localhost/someSiteName – все открывается. А папка localhost соответствует адресу 127.0.0.1 (локальной машине)
В документации openServer написано:
Чтобы при наборе IP адреса вашего компьютера открывался определенный локальный сайт, можно создать алиас вида ваш_внешний_ip => ваш_локальный_домен
Итак. Как сделать несколько сайтов на внешку:
1) В папке domains удаляем папку localhost (или изменяем её название, чтоб убрать ассоциацию с 127.0.0.1)
2) В папке domains создаем папку, которая послужит корнем для доменов. Например routeFolder . В ней уже будут лежать папки dev.test1.ru, dev.test2.ru, dev.test3.ru и т.д.
3) В настройках -> вкладка "Сервер" -> IP-адрес сервера ставим наш внешний IP

4) В настройках -> вкладка "Алиасы" -> привязываем IP к папке routeFolder и сохраняем настройку
Openserver очень удобный инструмент позволяющий быстро запустить вебсервер на локальном компьютере. Часто бывает необходимо работать с сайтом не только на компьютере с вебсервером, но и с другого компьютера в локальной сети и даже через интернет. У Openserver есть возможность выполнить настройку внешнего доступа к сайтам с другого компьютера.
Для открытия внешнего доступа к сайту на openserver необходимо зайти в настройки и перейти на вкладку «Сервер».
Если в поле «ip адрес» указать адрес вашего компьютера в локальной сети, то к вебсерверу можно будет подключится из локальной сети.
Если указать «все доступные адреса», то к сайту будет разрешено подключение из любой сети (доступ через интернет).

После этого при попытке запустить сервер можем получить ошибку следующего содержания: «Несовместимость конфигурации: домен/алиас localhost можно использовать только с IP-адресом 127.0.0.1»
Устраняется эта ошибка следующим образом: переходим в папку с доменами C:OpenServerdomains и переименовываем localhost в openserver. После этого сервер запустится.
Необходимо учесть еще пару моментов:
1. Если у вас уже имеются на openserver опубликованные сайты, то могут возникнуть проблемы с подключение к mysql т.к. сменилось имя сервера. Для устранения этой ошибки достаточно в файле конфигурации вашей CMS сменить имя сервера с localhost на openserver.
2. На компьютере с которого подключаетесь необходимо внести изменения в файл C:WindowsSystem32driversetc. Добавляем запись: 10.0.0.2 sitename (где 10.0.0.2 — адрес компьютера с вебсервером, sitename — имя вашего домена в папке C:OpenServerdomains)
2 thoughts on “ Настройка openserver для общего доступа ”
Подскажи что делать?! Мне надо зайти в C:WindowsSystem32driversetc и изменить «hosts»
— 127.0.0.1 localhost на 10.0.0.2 «Свой сайт — домен» Так получается?! Или надо создать фаил надо тогда какой формат? txt?
- admin Автор записи 29.09.2019 в 10:16
В hosts имеющиеся записи не редактируй. Просто добавь еще одну строку, например так: 192.168.1.5 domen
где domen — это локальное имя твоего сайта