Openserver как сделать сайт доступным из интернета
Перейти к содержимому

Openserver как сделать сайт доступным из интернета

Openserver доступ из локальной сети

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

    Разумеется остановите работу сервера.

Далее вам необходимо зайти в настройки и, в открывшимся окне настроек, зайти во вкладку Сервер

Теперь ваш сайт доступен для других участников сути. Для этого им необходимо ввести в адресную строку ваш IP адрес.

Если вы используете какую либо CMS ну или просто на вашем сайте уже прописано подключение к БД, то с вероятностью в 90% он у вас не заработает и выдаст ошибку с подключением. Для этого вам необходимо заменить хост БД с localhost(127.0.0.1) на IP адрес который вы узнали при помощи ipconfig в консоли.

Например в CMS битрикс я заменил host в файлах /bitrix/php_interface/dbconn.php, а так же в /bitrix/.setting.php

В WordPress я менял файл wp-config.php который находится в корне сайта.

После таких манипуляций, мои сайты без проблем заработали на локальных компьютерах.

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?

  1. admin Автор записи 29.09.2019 в 10:16

В hosts имеющиеся записи не редактируй. Просто добавь еще одну строку, например так: 192.168.1.5 domen
где domen — это локальное имя твоего сайта

Всем привет! На связи Заур Магомедов с очередной порцией материала для веб-мастеров. Не успел начаться год, как мы уже приблизились к концу февраля. Пишу этот пост в праздничный день 23 февраля и пока не забыл — поздравляю всех мужчин с Днем защитников отечества! Ну что можно пожелать еще, как не мирного неба над головой и здоровья всем нам. А теперь собственно перейдем к теме поста.

Когда разрабатываешь сайт по ходу дела могут появляться какие-либо вопросы к заказчику. Так вот эти вопросы удобнее, а в некоторых случаях просто обязательно обсуждать, когда заказчик видит сам сайт. Как мы можем показать сайт заказчику если он разрабатывается на локальном сервере? Можно, конечно, выгрузить на хостинг, это как вариант. Но для меня лично это неудобно, т.к. придется делать обновление на хостинге периодически по мере поступления вопросов. Можно также работая на локалке, при каждом сохранении файлов выгружать их на хостинг, причем делается это автоматически, например, в редакторе Sublime Text 3 + плагин Sftp есть такая возможность.

Не смотря на вышеперечисленные способы, есть вариант дать доступ к локальному сайту из интернета для просмотра. Тогда заказчик может наблюдать за всем ходом работы. Единственный минус — когда вы выключаете компьютер просмотр станет невозможным. Можно в принципе компьютер и не выключать, пусть работает, ничего страшного в этом нет. Давайте теперь рассмотрим, как показать сайт по локальной сети и дать доступ из интернет.

В качестве веб-сервера я буду использовать мой любимый Open Server.

Доступ к сайту по локальной сети

Сразу скажу, что в данной статье я не буду показывать как нужно настраивать саму локальную сеть. Благо по этой теме в интернете есть масса материалов, в том числе и видео. Чтобы показать сайт по локалке нам необходимо сделать некоторые настройки в Open Server. Для этого щелкаем правой кнопкой мыши по флажку Open Server в трее и переходим к настройкам. Выбираем вкладку «Сервер» и там находим такой пункт, как «IP-адрес сервера», выставляем опцию «Все доступные IP».

Далее переходим во вкладку «Алиасы». Обратите внимание на поля: исходный домен, конечный домен. В поле «Исходный домен» мы вбиваем IP-адрес нашего компьютера в локальной сети. Узнать его можно следующим образом: щелкаем на комбинацию клавиш Win+R и в появившимся окошке вбиваем команду «cmd» для запуска окна командной строки.

Далее в окне командной строки вводим команду «ipconfig» и получаем вот такой результат.

Здесь нас интересует срока «IPv4-адрес». Это и есть ваш локальный IP-адрес компьютера. У меня он — 192.168.1.205, вот как раз его я и вбиваю в поле «Исходный домен» в настройках локального сервера. В поле «Конечный домен» мы выбираем домен нашего сайта. Я выбрал домен по умолчанию — Localhost для примера. После выбора жмем по кнопке «Добавить» и у нас в списке внизу появится запись, которая говорит о том, какой домен должен открываться при обращении к компьютеру с данным IP-адресом из локальной сети.

Все, сохраняемся. После этого сервер перезапустится и можно уже открывать наш сайт по локальной сети. Для этого просто необходимо вбить ваш локальный IP-адрес на другом компьютере в адресную строку браузера. Вот и все, все довольно просто.

Доступ к локальному сайту из интернета

Можно дать возможность пользователям смотреть на сайт из интернета. В данном случае локальный сервер будет выступать в роли виртуального хостинга. Но здесь есть некоторый нюанс — у вас должен быть выделенный (статичный) внешний IP-адрес. Ваш интернет-провайдер должен назначить вашему компьютеру в своей сети IP-адрес, который останется неизменным. Обычно такую услугу провайдеры предоставляют за отдельную дополнительную плату. Имея выделенный IP-адрес, доступ к локальному сайту можно решить на раз, два…

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

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

Открываем настройки Open Server -> Алиасы. Добавляем новую строку в паре Исходный домен -> Конечный домен. В поле исходного домена вбиваем наш выделенный IP-адрес. В поле конечного домена выбираем наш домен. Не забываем нажать на кнопку «Добавить». Если вы не знаете свой IP-адрес, то узнать его можно на сайте 2ip.ru.

Следующее, что нам необходимо будет сделать это создать переадресацию портов в маршрутизаторе. Для чего это нужно? Когда обращаются к нашему IP-адресу из сети компьютер должен знать куда перенаправлять эти запросы. Так вот, с помощью переадресации мы как-бы говорим открой такой то сайт. Я покажу на примере своего роутера Asus RT-N12, но суть у всех роутеров будет та же самая, поэтому тут проблем не должно возникнуть. Если у вас английская прошивка, то ищите что-то типа Port Forwarding. На крайний случай почитайте в интернете, как создать переадресацию портов в вашем роутере.

Входим в панель управления роутера и переходим в раздел «Интернет» -> «Переадресация портов». Здесь сразу ставим переключатель «Включить переадресацию портов» в положение «Да». Далее, в поле «Имя службы» можно ввести произвольное название на латинице. В поле «Диапазон портов» можно указать диапазон портов с которыми вы будете работать. По умолчанию для http-соединения используется 80-й порт, поэтому в данном поле я ввожу — 80. В поле «Локальный IP-адрес» выбираем свой локальный компьютер. «Локальный порт» — вводим номер порта, с которым работает ваш локальный сайт. Его можно узнать в настройках Open Server. Смотрите выше скрин настроек Open Server, вкладки «Алиасы», ниже указаны настройки портов. Порт по умолчанию «80» можно переопределить, например. — 8080. Это нужно, если в вашей локальной сети уже кто-то занял 80-й порт. Тогда соответственно в поле «Локальный порт» вы указываете — 8080. После всего жмем на кнопочку «Add/Delete» и у нас в списке появляется новая запись.

После всех настроек применяем настройки — «Применить», при этом роутер будет перезагружен. Теперь в адресной строке браузера на удаленном компьютере вводим наш внешний IP-адрес и открываем сайт.

Что делать, если у вас нет выделенного IP-адреса?

Вариант с выделенным IP-адресом может подойти не всем. Не каждый захочет переплачивать провайдеру за выделенный IP и я их понимаю. Как раз для таких случаев предусмотрен вариант с динамическим IP-адресом — технология DDNS (Dynamic Domain Name System). Суть ее состоит в том, что клиенты могут подключится к роутеру даже с динамическим внешним IP-адресом через зарегистрированное доменное имя. В большинстве современных роутерах служба DDNS уже встроена. В качестве DNS-сервера выступают сервисы, которые предлагают услуги DDNS. Один из таких сервисов — noip.com. Вообще, таких сервисов может быть много, по крайней мере я знаю уже несколько. Итак, давайте все по порядку.

Регистрируемся на сайте noip.com. При регистрации можно отметить чек-бокс «Create my hostname later», т.е. создать имя хоста позже. Обратите внимание, на странице регистрации указано, что доступно бесплатным пользователям. Нас интересует именно «Hostnames», т.е. количество создаваемых хостов. Для бесплатного аккаунта это количество равно — 3. Думаю этой цифры будет более, чем достаточно.

После регистрации обязательно активируйте свой аккаунт, переходом по ссылке в письме. После авторизации мы попадаем в свой личный кабинет, выбираем в меню «Dynamic DNS (Free)» -> «Hostnames» и создаем имя хоста, кликнув по кнопочке «Add Hostname». В поле «hostname» вводим любое имя латинскими буквами, например, my-site. Имейте ввиду, что выбранное вами имя может быть занято на определенном домене (поле Domain). Можете ввести другое имя или выбрать домен, на котором это имя будет свободно. В поле «IPv4 Address» подставлен ваш внешний IP-адрес, система определила его автоматически. Здесь ничего не трогаем. Если хотите убедиться, что это именно ваш IP, то можете сравнить его на сайте 2ip.ru. Добавляем хост — «Add Hostname».

Все, хост у нас создан. Теперь копируем адрес хоста в буфер обмена и идем в панель управления роутера: «Интернет» -> «DDNS» и вводим свои данные, как на скрине ниже. Единственное прокомментирую то, что вам надо будет ввести свой логин и пароль, который вы указывали при регистрации на сайте no-ip.com.

Жмем «Применить» и ждем пока перезагрузится роутер. Последнее, что нам необходимо будет сделать это указать наш хост в Open Server. Для этого идем в настройки, вкладка «Алиасы» и добавляем в список новый хост в ключе Исходный домен -> Конечный домен.

Все, вбиваем в адресной строке браузера наш хост, в моем случае это — my-site.ddns.net и ура наш локальный сайт открывается. Проверять лучше на телефоне или на другом устройстве, которое не подключено к вашей локальной сети, т.к. данный хост может открыться и по локалке. Можно в телефоне отключить Wi-Fi и через мобильный интернет проверить. Вот, что у меня получилось.

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

Как настроить доступ из интернета к нескольким сайтам на OpenServer?

Как и что сделать, чтобы на эти все сайты можно было зайти из интернета?

Хотелось бы, чтоб можно было обратиться вот так:

На данный момент могу привязать через alias только один сайт. Т.е. вбив 82.111.222.333 откроется один из сайтов test , в зависимости, что привяжу.

А хочется всё и сразу 🙂

user avatar

Я поанализировал некоторые факты:

При обращении по адресу 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 и сохраняем настройку

Форум

Подробная инструкция — внешний доступ к сайту + DNS + роутер

Подробная инструкция — внешний доступ к сайту + DNS + роутер

Имеем стандартное проводное подключение к инету (оптическое волокно).

1. Сверяем IP инета и на WAN в роутере:
Заходим на сайт 2ip.ru
Заходим на роутер в браузере 192.168.1.1, смотрим WAN.
Eсли напрямую в комп кабель инета — переходим в состояние сет.подключения.

Если IP одинаковые, значит все впорядке — провайдер на комп клиента отдает внешний (белый) IP.
Если же айпи разные, то у вас внутренний (серый) IP.

В этом случае звоним провайдеру говорим что хотим внешний IP.
Сейчас уважающие себя провайдеры выделяют внешний IP абонентам.
Иногда в службе поддержки могут не понять вас и буду «впаривать» услугу статический IP.
Не ведитесь на это и требуйте внешний ip под угрозой того что уйдете к другому провайдеру.

Если надо объяснить оператору и так сказать ввести в курс дела — скажите что когда захожу на 2ip.ru — IP в инете и IP компа (wan роутера) РАЗНЫЕ.
А это значит что wan ip роутера (компа) внутренний.

Кабель инета напрямую в компе >
Изображение
Кабель инета в роутере >
Изображение
На сайте 2ip.ru >
Изображение
Вообщем должны пойти на встречу и поменять на внешний, особенно если есть конкуренция провайдеров интернета в вашем городе.

Стоит заметить что при выделении вам динамического внешнего ip часто идет подвязка к mac адресу.
Можете перебирая маки подобрать более быстрый ip в выгодном (более надежном) диапазоне.
В роутере обычно можно поменять в секции Mac Clone.
Если выходите напрямую с компа, то в свойствах сетевой карты — дополнительно — сетевой адрес.

Команда для проверки пинга, cmd >
ping -t [сайт]

Вы должны обязательно удостовериться в наличии внешнего IP.
Или немного «повоевав» с провайдером получить внешний IP.
Когда обязательное требование — наличие внешнего IP будет выполнено — можете читать дальше, в ином случае это не имеет никакого практического смысла, разве что для понимания как это работает.

2. Роутер:
Заходим в управление роутером через браузер (192.168.1.1)
Проброс портов (forwarding — virtual servers) — порты 53 и 80 на лок.IP.
То есть когда на внешний Ip инета будут стучаться, то сигнал будет передаваться нужному компу в локальной сети 192.168.1.xxx по этим портам.

Изображение

3. OpS настройки:
В OpS — Настройки — Сервер — БЕЗ отметки — Не вносить изменения в HOSTS файл
Сервер — Защитить сервер от внешнего доступа

Сервер — IP адрес сервера — вводим нужный (192.168.1.xxx)
Можно увидеть все доступные IP сет.карт — сmd — ipconfig
Тут надо понимать чтобы проброшенный IP в роутере соответствовал IP сет.карты компа где развернут OpS.

Изображение
Модули — DNS — Unbound
(для мониторинга трафика через лог файл > ставим галку — вести лог запросов)

Изображение

4. Домены(сайты) OpS:
Меняем в каталоге доменов (OpenServer/domains) название папки(домена) localhost на localhost# чтобы не ругалось что нужен обязательно 127.0.0.1 айпи.
Домены должны быть 2го и более уровневыми для правильной работы DNS сервера.
Например > test.loc / my.site.com

5. Unbound:
Переходим в папку
e:\OpenServer\userdata\config\
делаем копию файла Unbound-1.4.21_zone.conf
Вносим изменения >
local-data: «%domain%. %ttl% IN A [ваш_внешний_ip]«

6. Запуск OpS:
Запуск (перезапуск) OpS.

7. Сетевое подключение:
TCP/IP — вводим IP dns сервера который указали в пробросе портов в роутере и который присвоили OpS > 192.168.1.xxx
Также можно указывать у себя и внешний IP но не целесообразно — по внутреннему быстрей, минуя внешний запрос и проброс сигнала через роутер.

Изображение
Мы можем НЕ менять DNS так как считаем ранее hosts файл, но для остальных сайтов инета будет работать свой dns сервер Unbound.

8. Схема взаимодействия:
Удаленный комп прописал в сет.подключении IP вашего dns (ваш внешний ip инета).
У вас запущен OpS.

Изображение
Идет запрос о сайте на ваш DNS на внешний ip 53 порт —
— роутер — проброс сигнала на ваш лок.IP 53 порт —
— Ответ днс — IP с записи A —
— клиент — GET запрос на IP с записи A (на внешний IP) на 80 порт —
— роутер — проброс сигнала на лок.IP 80 порт —
— Ответ веб-сервера —
— клиент (удаленный комп) увидел у себя в браузере ваш проект.

9. Заметки:
Следует отметить что непосредственно ВЫ (комп где запущен OpS) при наборе адреса вашего сайта НЕ спрашиваете IP на DNS сервере Unbound куда бросать GET зарос на 80 порт, а ранее считываете запись с \windows\etc\drivers\hosts
192.168.1.xxx [ваш_сайт]

Можете также попытаться запустить OpS НЕ добавляя записи о доменах в HOSTS файл и указывая внешний IP, но тогда OpS НЕ запуститься, так как этот IP не доступен и находится в роутере.
Так можно делать если кабель инета с внешним IP вставлен НАПРЯМУЮ в сетевую карту компа.
Также можно не менять %ip% в конфиг файле Unbound-1.4.21_zone.conf

Если не менять %ip% в конфиг файле Unbound-1.4.21_zone.conf то при вышеизложенной настройке сайт OpS будет виден только в локальной сети. И DNS в сет.подключении надо вводить 192.168.1.xxx где запущен OpS.

Для примеров использовались внутр.IP вида 192.168.1.xxx относительно стандартных настроек роутеров.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *