Интернет

Создать свой веб сервер. Как настроить личный домашний web-сервер

Создать свой веб сервер. Как настроить личный домашний web-сервер

По определению вебсервер – это программа, имитирующая среду Большого Интернета внутри домашнего компьютера. Название, состоящее из двух частей «веб» и «сервер» скорее сбивает с толку, так как более понятным является второе наименование – программа локальный сервер . Тогда становится понятно, что применяют эту программу на компьютере пользователя (локально) и, не важно - подключен он к Интернету или нет. Еще более точное наименование - программа домашний сервер .

Программа сервер - это операционная система для среды Интернета , а программа браузер - это аналог программы Word, которая умеет читать сайты - как документы , написанные на языках HTML , PHP , PERL ...

Как вы уже знаете, серверные программы устанавливают на физические серверы (компьютеры постоянно соединенные с сетью интернета), на которых находятся папки сайтов. Папок много разных, так вот, серверы (как программы) показывают браузеру, что - вот эта папка и ЕСТЬ тот сайт, который запрашивается - и тогда, браузер заходит в эту папку, пробуждает программу движок сайта (систему управления), которая начинает выдавать браузеру тексты и картинки, чтобы он смог их перетащить и нарисовать на экране монитора у посетителя.

В отличие от настоящих серверных программ локальный сервер на компьютере – это вспомогательная программа для создания веб сайтов .

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

Локальные веб серверы вполне обеспечивают работоспособность сайтов на таких компьютерах-серверах, если для сайтов зарегистрировано доменное имя и об их адресе знают DNS -серверы. Чтобы браузеры пришли на такой сайт с домашним размещением, компьютер-сервер пользователя (владельца сайта) должен иметь постоянный (статичный), а не динамичный адрес (IP ) в Интернете.

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

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

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

С экономической точки зрения домашний сайт так же не очень выгоден. По сути, физический сервер – тот же самый компьютер (только без монитора), но у него на одном жестком диске расположено много сайтов. Если в стоимость обслуживания домашнего сайта надо включать стоимость электроэнергии, стоимость услуг провайдера, обеспечивающего подключение к Интернету, да и остаточную стоимость компьютера, на котором установлен сайт, то на физическом сервере эти расходы делятся на число сайтов.

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

Ниже пойдет теория для любознательных, а для практиков я советую сразу перейти к одной из статей: или Сервер DENWER .

Так для чего же нужны серверные программы?

Новички должны понимать принцип работы Интернета. Пользователь Интернета имеет на своем компьютере программу браузера, которую он заставляет «пойти» на сайт, лежащий на жестком диске физического сервера (специального компьютера за тысячи верст от посетителя). Там браузер «пробуждает» серверные программы, работающие уже на стороне физического сервера. Они начинают взаимодействовать с браузером - подсовывая (указывать) ему нужные элементы для закачки на компьютер посетителя. Если браузер и серверные программы имеют одинаковые установки, то браузер нарисует на экране монитора дома у пользователя страницу сайта так, как её задумал автор.

Серверные программы – создают не сайт, а среду , в которой могут работать много сайтов. Сайт создается при помощи другой программы, которая называется CMS - система управления сайтом или просто – движок сайта. Для одного сайта движок является его внутренним «механизмом».

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

Основным компонентом является программа сервер (чаще всего Apache ), которая собственно и создает среду интернета внутри локального компьютера. Технология Apache проверена временем и отличается скоростью и бесконфликтной работой с любой операционной системой.

Так как в последнее время многие сайты пишутся на языке PHP , то имеется компонент – компилятор языка PHP , который позволяет браузеру прочитать коды сайта и собрать страницу. Такой компилятор языка позволяет браузерам понимать срипты, написанные на языке PHP и правильно отображать всё на экране монитора у посетителя сайта. Некоторые сборки дополнительно содержат интерпретаторы других языков, например, PERL в XAMPP . Наличие компиляторов других языков, кроме PHP , для новичков скорее проблема, потому что такие компоненты придется отключать по причине неиспользуемости.

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

Обычно компоненты сервера его разработчики перебирают с целью уменьшения размера их туториала. Для соединения отдельных программ вместе используют управляющую утилиту (программу) phpMyAdmin .

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

Владелец сервера обладает самыми высокими правами администратора, что позволяет ему входить во все сайты для проверки. Так появляется иерархия пользователей: администратор сервера, следом владелец сайта – администратор только своего сайта (root или admin ), зарегистрированные посетители – комментаторы (комюзер или user ), которым позволено написать комментарий, простые посетители, которые могут только смотреть.

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

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

Тут сразу можно пояснить для мнительных инициаторов сайта. Веб сервер – программа теневая, работает невидимо для сидящего перед компьютером. Один раз установили – и все. Её лишь включают (кликнув по одному ярлыку) перед началом работы с домашним сайтом и выключают после (кликнув по второму). Чего-либо читать вам не придется. Для этой программы совершенно не нужна локализация – наличие поясняющих надписей на русском языке. Поэтому при выборе программы локального сервера не следует обращать внимания на русификацию.

Это замечание для тех, кто выбирает отечественный Денвер (чаще Denwer , чем Denver ). Ничего особенного кроме русификации и малого размера в нем нет. Хотя уровень последней версии №3 веб сервера Денвер позволяет разрабатывать сайты любой сложности. Об установке локального сервера Denwer , популярного среди русскоязычных пользователей Интернета, вы можете почитать в отдельной статье Установка DENWER .

Обычно сборки локальных серверов кроме серверных программ содержат программы для облегчения труда разработчика сайтов. Чаще всего разработчики в комплект включают какой-нибудь FTP -клиент для закачки файлов на сервер. Программы, подобные FileZilla , легки в усвоении и применяются для закачки файлов на реальный сервер. Для домашнего сайта заливать файлы на сайт как-то смешно, когда можно просто перетащить мышью. Применяются они редко, поэтому ради активации одного FTP -клиент включать весь локальный сервер не стоит. Проще установить FileZilla отдельно, а в комплекте веб сервера ftp -клиент даже не активировать.

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

Кроме веб серверов XAMPP и DENWER среди русскоговорящих пользователей распространены следующие бесплатные серверы: AppServ , TopServer , VertigoServ , Zend Server Community Edition . Почти все веб серверы могут устанавливаться на флешку, не нуждаясь ни в каких драйверах, что позволяет носить прототип вашего сайта с собой. Обычно веб серверы являются кроссплатформенными программами – то есть они могут работать в любых операционных системах, но для операционок из семейства Linux все же лучше использовать специализированный LAMP . Недавно появился веб сервер Open Server , построенный на основе сервера Nginx .

Особой разницы между локальными серверами нет, поэтому устанавливайте любой. Я рекомендую не капризный XAMPP , который из всех домашних серверов имеет самую серьезную поддержку.

Например, я при установке Денвера постоянно спотыкался на всяких мелочах, наверно потому, что он по происхождению "русский", а вот установка XAMPP прошла гладко - с первого раза.

Страница создана для пояснения положений в рубриках , и . Статья имеет постоянную ссылку: http://сайт/page/veb-server-na-svoem-kompjutere

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

Но из его слов я тогда уже догадался, что сервер apache2 что-то изменил в своей конфигурации, так как конфигурационные файлы, которые он мне присылал, сильно изменились. Но вот я вчера решил установить сервер на домашнем компьютере, чтобы тестировать и дорабатывать свой сайт. (Если вы хотите поставить веб сервер прямо на windows, то )

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

Я решил не тратить время впустую, а подойти к проблеме с другого боку: установить сервер на своем компьютере на виртуальной машине. У этого подхода есть много преимуществ, да и делается все не так сложно, даже не нужно заканчивать курсы для системного администратора. Хотя пройти онлайн курсы Cisco, для общего развития, было бы не плохо:)

Веб-сервер на виртуальной машине - ПЛЮСЫ:

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

2. Локальный web сервер можно будет запускать только по необходимости, и домашний сервер не будет постоянно забирать ресурсы компьютера.

3. Виртуальный web сервер можно легко перенести на другой компьютер.

Устанавливаю свой пароль, его вводить придётся много раз: на сервер, на базу данных, на wordpress и всё по два раза. Так что поставьте везде один не сложный пароль, чтобы потом не запутаться.

После этого предстоит самый важный шаг - настроить сеть - выбираем статический IP адрес.

У меня по умолчанию на этой виртуальной машине сетевая карта стоит в режиме Bridged. Это значит, что виртуальная машина, а значит и сервер, будут использовать диапазон адресов, который использует ваша сетевая карта на компьютере. Как узнать, какие адреса нужно писать? Наберите в терминале команду:

Ifconfig

Теперь посмотрите адрес вашей сетевой карты. У меня ноутбук, работающий по wifi, поэтому моя сетевая карта обзывается wlan0 и имеет адрес 192.168.1.4

Wlan0 Link encap:Ethernet HWaddr 00:08:ca:23:8e:4a inet addr:192.168.1.4 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::208:caff:fe23:8e4a/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:999435 errors:0 dropped:0 overruns:0 frame:0 TX packets:634111 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1291595694 (1.2 GB) TX bytes:72748974 (72.7 MB)

Поэтому я настраиваю сервер так:

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

Тут нам ещё раз подсказывают наш IP адрес, который я выбрал произвольно, и по которому будет доступен сервер из основной системы - 192.168.1.30 Набираем это адрес в строке браузера и попадаем на наш сервер, где уж установлен WordPress:)

Напомню, что логин admin и пароль тот, который вы придумали при установке. Вот и всё.

Хотя нет, ещё не всё. Если вы наберёте в браузере такой адрес _https://192.168.1.30:12321/, то попадете в WEBMIN, панель управления сервером. Там много интересного, и вы можете почувствовать настоящим системным администратором.

Будут вопросы - пишите, помогу чем могу. Лайки и твиты приветствуются!

СОВЕТ ВЕБМАСТЕРУ: Умение зарабатывать в интернете - это только пол дела, вторая половина - это умение ВЫГОДНО обналичивать электронные деньги. Вот список офшорных банковских карт, на которые можно выводить средства и потом снимать с них хрустящие купюры:

1. Payoneer - Самая популярная в мире платежная система для фрилансеров. Выдает карты, находится в США.

2. EpayService - Американская платежная система, очень популярна во многих странах, бесплатно дает карту MasterCard в EVRO для жителей СНГ и Европы.

3. Skrill - Единственная платежная система которая работает с криптовалютами и при этом выпускает бесплатные банковские карты MasterCard.

4. AdvCash - Офшорный банк находится в Белизе, можно открыть счет в долларах, евро, фунтах и рублях.

5. Payeer - Штаб квартира этой платежной системы находится в Грузии, тут так же можно открыть счет в долларах, евро и рублях.


Домен RU - 99 руб
Домен РФ - 99 руб

Рано или поздно, наступает прозрение и Вы начинаете задаваться вопросом, а зачем я плачу за хостинг моего сайта?

Кто не знает, что такое хостинг, даю определение:

Хо́стинг (англ. hosting) - Услуга по предоставлению вычислительной мощности компьютера для размещения информации на Сервере (аппаратное обеспечение), постоянно находящемся в сети (обычно Интернет).

Я уже два раза менял хостинг своих сайтов и у всех хостингов есть стандартные недочеты:

  1. Загрузка канала Интернета в связи с большим количеством клиентов. Сайты медленно открываются.
  2. На серверах живет много сайтов. Не все сайты сделаны правильно в плане безопасности. Веб-сервер хостинга подвержен атакам хакеров. У меня уже несколько раз на сайте был вирус, причем всегда по вине взлома сервера хостинга.
  3. Конфиденциальность. Как быть, если Вы размещаете архивы данных работы Установок Замкнутого Водоснабжения (УЗВ) для выращивания рыб, или не один год делали онлайновую игру «Рыбная Ферма», ее коды доступны администраторам хостинга.
  4. Если надо хранить много информации, то арендовать такое дисковое пространство у хостинг-провайдера дорого, платить за это придётся немало. Собственник же домашнего веб-сервера — сам себе хозяин.

Плюсы своего веб-сервера. Назовем его еще домашним сервер:

  1. Конфиденциальность. Доступ к серверу имеете только Вы.
  2. Не ограниченный объем дискового пространства.
  3. В Риге уже во многих квартирах есть доступ к интернету через оптический кабель. Т.е уже есть постоянное, высокоскоростное подключение к интернету.
  4. Веб-сервер обошелся мне в 20 евро, что делает его не обременительной покупкой.
  5. Канала Интернета и мощности обычного офисного компьютера достаточно, чтобы обеспечить бесперебойную работу нескольких сайтов, или одной небольшой игры.
  6. У моего знакомого на похожем компьютере как у меня крутилось дома 14 веб сайтов типа «визиток» на базе Joomla — система управления содержимым (CMS).
  7. Мой веб-сервер потребляет максимум 100 Ват*час электрической мощности. Такой мощность установлен блок питания. В холодное время года, а в Риге плохо топят, все 100 Ват*час уходят в тепло — в обогрев квартиры.
  8. Компьютер работающий под управлением Линукса полезная вещь в доме. Во первых операционная система Линукс бесплатная (в отличии от глючной Windows), одной командой можем устанавливать новые программы, компьютер может выполнять функции медиацентра для просмотра скачанных фильмов на домашнем телевизоре, или сервера резервного копирования важных данных с Вашего рабочего компьютера, торент сервер для скачивания фильмов из интернета.
  9. Компьютер под управлением Линукса работает на 25% быстрее, менее глючит, более защищен от вирусов.
  10. У меня в квартире плохой прием от роутера wi fi, так как дом блочный. Пригодилась карточка беспроводного адаптера D-link DWA-510, 802.11g. Поставил ее на свой сервер, загрузил драйвер, две программы hostapd и dhcp сервер и все. Теперь две точки wi fi раздают интернет по квартире.

Итак решено, делаем свой сервер. В интернете полно объявлений по поводу б/у компьютеров. Я специально выбирал компьютеры, только с процессором INTEL Atom. Эти процессора не имеют вентилятора для охлаждения центрального процессора, так как мало греются и я читал, что роботов для футбольных матчей в прошлом году, некоторые команды, оснащали именно процессорами INTEL Атом (наверное когда Вы читаете эту статью этот процессор канул в бездну доисторических процессоров). У Атомов пассивное охлаждение из-за малой мощности потребления электроэнергии, а для меня тишина в доме самый главный приоритет. Не хочется слышать постоянный шум работающего компьютера.

Спецификация на компьютер, который я купил с рук:

Материнская плата Intel BLKD2700DC
Оперативная память 4GB 1066MHZ DDR3 SODIMM KVR1066D3S8S7/2G x2 шт
Жеские диски HI TACHI GST HDD MOBILE (2.5″,500GB,8MB,SATA II-300) x2 шт
Корпус INTER-TECH ITX-X9 Slider + ATX 100Ват

Смотрим, что у него внутри

На мой взгляд, это очень отличная тема для описания. В своё время было интересно поднять какой-либо сервер на своём компьютере для более удобного обмена файлами. Попробовав различные и даже протокол, я понял, что мне они абсолютно не нравятся, первые выглядят в браузере, мягко говоря, убого, вторые хотя и имеют свои явные преимущества, но подключать сетевой диск на чужих компьютерах не хочется. Но в один (прекрасный и солнечный) день я встретил программу под названием HTTP File Server (сокращенно HFS), установил, настроил (так как я начинал работать с самой чистой версией, с этим были некоторые проблемы) и почти влюбился в эту программу. Для доступа к моим файлам теперь достаточно иметь любой браузер, так как весь доступ осуществляется, через обычную веб-страницу. Также у меня создана папка, в которую человек, знающий пароль, может добавить файл прямо через браузер. Файлы с сервера можно качать как по одному, так и сразу папками. Программа сама поместит папку в.tar архив без сжатия и отправит для скачивания. При этом сайт имеет довольно опрятный вид, хотя при желании (и достаточных знаниях) можно самому написать шаблон сайта. Признайте, что это отличный способ для легкой и удобной передачи файлов?

И вот пример страницы, которую вы будете видеть в окне браузера, как видите всё красиво и опрятно, на форуме программы можно найти много красивых шаблонов:

Хотя её меню полностью на английском языке, для меня это не является помехой. А для тех, кто плохо знает английский, в конце статьи я постараюсь максимально полно объяснить за что отвечают все разделы меню и как ими пользоваться.

Итак, перейдем к установке и настройке HTTP File Server:

1) Чтобы несколько сэкономить вам время, я приготовил сборку HFS с русскоязычным шаблоном сайта и произвел первоначальную настройку самой программы. Скачать сборку можно с моего Яндекс.Диск’а по ссылке . Если же вы уверены в своих способностях, то можете скачать чистую версию программу на официальном сайте http://www.rejetto.com/hfs/

На этом всё. Надеюсь эта статья оказалась вам полезной, нажмите одну из кнопок ниже, чтобы рассказать о ней друзьям. Также подпишитесь на обновления сайта, введя свой e-mail в поле справа.

Спасибо за внимание:)

Как известно, наиболее надёжный, удобный и дешевый хостинг – это http://127.0.0.1.

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

Так что же лучше использовать. Есть много оболочек для web–разработки. Они представляют собой портированные версии программ для Linux- и Unix-подобных систем. В их состав входят PHP, MySQL, Perl, Sendmail, Apache и многое другое. Только недостатки часто встречаются, среди которых неработающие части комплекса, отсутствие возможности перезапуска сервисов, нестабильная работа и дыры в безопасности. Как тестовую площадку, в принципе, можно использовать. Но не более того.

Веб сервер на ubuntu для локальной сети

Лучше всего использовать родные полнофункциональные сервисы, установив Linux – подобную систему. При этом всё настраивается под конкретную ситуацию. И разработкой лучше заниматься в среде, которая затем будет использоваться в работе.

Итак, предположим, что есть роутер с выходом в интернет. Также имеется тестовый сервер на Ubuntu Server 16 с именем webs. Необходимо установить web-сервер для тестирования проектов и их дальнейшей миграции на хостинг.

Установка LAMP

Будем использовать связку Apache + PHP + MySQL.

Перед установкой обновим систему.

sudo apt-get update

sudo apt-get upgrade

Установим Apache + PHP + MySQL.

sudo apt-get install apache2 php libapache2-mod-php php-mcrypt php-mysql mysql-server mysql-client php-gd

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

В файл /etc/apache2/apache2.conf в самый конец добавим переменную ServerName. Это должно быть имя домена или .

К примеру

ServerName 192.168.0.160

Домашний web сервер своими руками

Основная конфигурация установлена. Проверим работоспособность. Для этого перейдём по адресу http://192.168.0.160 и увидим приветственную страницу apache.

Проверяем работу PHP. По умолчанию корневая папка web-сервера находится в /var/www/html. Удаляем из неё файл index.html и создаём файл index.php.

rm /var/www/html/index.html|echo ‘’>/var/www/html/index.php

Если в браузере отображаются сведения о PHP, значит, всё работает.

Настройка Samba

Теперь надо настроить доступ к файлам web – сервера и доступ к web – серверу по имени. Без наличия настроенного в сети сервер будет пинговаться исключительно по IP адресу. Поэтому надо установить и настроить Samba.

sudo apt-get install samba

Редактируем файл /etc/samba/smb.conf.


netbios name = webs
security = user
map to guest = bad user

Создаём секцию для доступа к файлам.


comment = html
path = /var/www
browseable = yes
read only = no
guest ok = yes
directory mask = 0777
create mask = 0777

Перезагружаем службу.

sudo service smbd restart

После перезапуска файлы WEB – сервера будут доступны по ссылке \\webs\html

Имеем готовую площадку для экспериментов.

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

Теперь нужен доступ из интернета. Регистрируем бесплатное доменное имя в зоне.GA (Габона). Для этого идём на сайт http://www.freenom.com. Регистрируемся, ищем и регистрируем свободное имя. При регистрации указываем свой внешний IP – адрес. Этот сервис позволяет воспользоваться своим DNS, поэтому регистрировать имя на бесплатном DNS–сервере заранее нет необходимости. Через некоторое время имя будет реплицировано на сервера DNS и станет доступно.

В файле /etc/apache2/apache2.conf надо изменить переменную ServerName на зарегистрированное имя.

В настройках маршрутизатора необходимо № 80 на локальный IP – адрес сервера.