По определению вебсервер – это программа, имитирующая среду Большого Интернета внутри домашнего компьютера. Название, состоящее из двух частей «веб» и «сервер» скорее сбивает с толку, так как более понятным является второе наименование – программа локальный сервер. Тогда становится понятно, что применяют эту программу на компьютере пользователя (локально) и, не важно - подключен он к Интернету или нет. Еще более точное наименование - программа домашний сервер.
Программа сервер - это операционная система для среды Интернета, а программа браузер - это аналог программы Word, которая умеет читать сайты - как документы, написанные на языках HTML, PHP, PERL ...
Статья написана в цикле Локальный веб сервер и имеет постоянную ссылку: //design-for.net/page/veb-server-na-svoem-kompjutere
Понятия: раскрутка продвижение оптимизация сайтов |
Как вы уже знаете, серверные программы устанавливают на физические серверы (компьютеры постоянно соединенные с сетью интернета), на которых находятся папки сайтов. Папок много разных, так вот, серверы (как программы) показывают браузеру, что - вот эта папка и ЕСТЬ тот сайт, который запрашивается - и тогда, браузер заходит в эту папку, пробуждает программу движок сайта (систему управления), которая начинает выдавать браузеру тексты и картинки, чтобы он смог их перетащить и нарисовать на экране монитора у посетителя.
В отличие от настоящих серверных программ локальный сервер на компьютере – это вспомогательная программа для создания веб сайтов.
Часто спрашивают – может ли работать веб сервер в интернете? Конечно, подразумевается сайт на веб сервере, которые некоторые умельцы пытаются создать на своем старом компьютере, подключив его постоянно к сети интернета.
Локальные веб серверы вполне обеспечивают работоспособность сайтов на таких компьютерах-серверах, если для сайтов зарегистрировано доменное имя и об их адресе знают DNS-серверы. Чтобы браузеры пришли на такой сайт с домашним размещением, компьютер-сервер пользователя (владельца сайта) должен иметь постоянный (статичный), а не динамичный адрес (IP) в Интернете.
Другое дело – в практической нужности размещения сайтов на домашнем компьютере. Все же локальные серверы – это программы для создания среды интернета не для настоящих сайтов, а для их предварительных макетов. На таком макете обкатывают функционал и дизайн будущего сайта перед его публикацией в Интернете.
Веб серверы не обладают необходимой степенью защиты от зловредных программ (вирусов, троянов и т.п.), наводнивших нынешний Интернет. Разработчики не думали, что это им понадобиться и не включили в поставку. На настоящем же сервере осуществляется серьезная защита работы серверных программ.
Следующий недостаток веб серверов состоит в том, что они не предназначены для посещения сайтов большим числом посетителей. Локальные серверы плохо держат нагрузку при массовом трафике.
С экономической точки зрения домашний сайт так же не очень выгоден. По сути, физический сервер – тот же самый компьютер (только без монитора), но у него на одном жестком диске расположено много сайтов. Если в стоимость обслуживания домашнего сайта надо включать стоимость электроэнергии, стоимость услуг провайдера, обеспечивающего подключение к Интернету, да и остаточную стоимость компьютера, на котором установлен сайт, то на физическом сервере эти расходы делятся на число сайтов.
Кроме того реальный сервер обеспечен надежной защитой от хакерских программ, делает регулярное автосохранение файлов сайта, а хостер (провайдер – владелец сервера) предоставляет администрирование и поддержку.
Ниже пойдет теория для любознательных, а для практиков я советую сразу перейти к одной из статей: Сервер XAMPP или Сервер 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 прошла гладко - с первого раза.
Страница создана для пояснения положений в рубриках MaxSite, Программы для создания сайта, Этапы создания сайта и В помощь вебмастеру. Статья имеет постоянную ссылку: //design-for.net/page/veb-server-na-svoem-kompjutere
Комментариев: 4 RSS
1Владимир24-11-2012 10:37
Спасибо! Отличная статья!
А как посоветуете организовать веб-сервер на freenas?
2Vladimir Tochilin27-11-2012 19:14
Стараюсь писать так подробно, чтобы не было повода задавать вопросы. Для таких статей – наверно – непонимание темы – скорее брак статьи.
Теперь разберем Ваш вопрос.
1
У вас есть сетевое хранилище NAS, куда вы собираете свои файлы – возможно, качаете и раздаете торренты – т.е. то, что называют файло-помойкой.
И вас посетила мысль – А не сделать ли мне одновременно и собственный сервер, на котором можно поставить сайт, раз уж мой NAS круглосуточно открыт в Интернет?
2
Если у вас купленный NAS, то очевидно, что у него процессор очень слабый, а оперативная память, скорее всего, не более 250-512 Мб.
В этом случае установить довольно «тяжелый» вебсервер не удастся из-за аппаратных ограничений. Сама ОС freenas позволяет создать лишь сервер, возможности которого ограничены закачкой и распределением файлов из сети. Ставить локальный сервер (ДЕНВЕР или КСАМП) – просто не куда. Кроме того, надо еще и движок сайта устанавливать.
3
Если вы сами создали NAS из старого компьютера, то даже старенький настольный комп позволяет устанавливать локальный сервер и создавать сайты, даже при слабом стареньком процессоре.
Для операционных систем из семейства люниксов лучше ставить локальный сервер LAMP.
4
Энтуазисты самоделковых сервером еще не перевелись, судя по вашему вопросу. Хочу и вас и остальных желающих создать свой самостийный сервер предупредить, что эта затея - не стоит потраченного труда.
Собственно весь труд и начнется после создания и открытия вашего сайта в Интернет. Написание вами уникальных статей и создание изображений позволят создать нужный людям ресурс.
А энтузиастам придется первым делом купить статичный адрес, затем оплачивать электричество, делать автосохранения, а главное - оберегать сайт от врагов, так как все локальные серверы – лишь игрушки и защиты не имеют. Для обеспечения круглосуточной работы компьютера, на котором будет сервер + сайт – нужен дорогостоящий бесперебойник и т.п. В то время когда услуги хостера стоят всего 100 рублей на один сайт в месяц.
5
Надо быть прагматиком и сразу решить - что же вам нужно:
1) сразу приступить к развитию сайта – там весь ваш труд пойдет на пользу сайту – из-за которого и городится весь этот сыр-бор;
2) или вас привлекает возня с проходной программой + куча проблем по администрированию собственного сайта.
6
В настоящее время у хостеров имеются огромные мощности дискового пространства – куда вам с вашим НАСом. Стоимость хостинга + продление домена составляет менее 2000 рублей в год – поэтому заниматься штучным производством сайтов, когда есть заводы с поточным производством – дело не перспективное.
7
Мой совет – как можно раньше приступайте к созданию сайтов – а локальные серверы оставьте энтузиастам, которые может быть учатся на операторов для работы у хостеров.
Как правило, рядовым пользователям локальный сервер совсем не требуется. Его используют для создания макета сайта, показа эскиза заказчику, переделки дизайна – когда еще сайта нет, проверки всяких скриптов.
Обычные же инициаторы сайтов сразу покупают место – ставят движок и уже в сети ломают свой сайт как хотят. Им собственно прятать свой сайт не от кого.
Владимир - удачи вам в создании сайта на настоящем сервере!
3вован24-01-2013 21:12
серьезно конечно нет, но для баловства все четко работает, до 1000 человек в сутки держит при шустром и непадающем инете. Ставишь любой линукс-сервер на динамическом IP webmin, можно virtualmin. Все защиты там также можно ставить - полноценный сервер. Если комп мощный можно все это через виртуальную машину.
4Василий10-07-2013 12:28
Спасибо, нормальная статья!