Установка веб-сервера на локальный компьютер

Теги: , , ,

Статья, ориентированная на начинающих веб-разработчиков, описывающая процесс создания домашней среды разработки/тестирования и отладки веб-сайтов и веб-приложений. Этот материал не претендует на полноту изложения и не стремится затронуть все возможные вариации ввиду их неисчислимого множества. Рассмотрим лишь самые распространенные примеры реализации веб-платформ на Windows и на Unix-системах. Хотелось бы затронуть и макинтош, но, к сожалению, лично я не имею опыта работы с этой операционной системой.

Состав нашей веб-платформы

Веб-сервер
(наиболее распространенный на данный момент - Apache HTTPD, его и возьмем
Интерпретатор скриптового языка программирования
Perl уже не актуален, а Python еще не набрал популярность, поэтому рассмотрим самый распространенный на данный момент - PHPrus.
Система управления базами данных(СУБД)
PostgreSQL - очень мощная и стойкая СУБД, справляющаяся с огромными нагрузками, и позволяющая хранить огромные объемы данных. При этом, распространяется по лицензии GPL, но... Для веб-сайтов она пока что не актуальна. Поэтому, мы выберем MySQL, которая не отстает в производительности в рамках веб-проектов, тоже распространяется по свободной лицензии, и очень проста в установке и настройке.

Можно долго спорить и рассуждать о конкретных реализациях и выборе программных решений для каждого конкретного случая, но тут я вынужден напомнить, что статья ориентирована на начинающих веб-мастеров а не разработчиков систем управления контентом. Именно на связку Apache+PHP+MySQL заточено подавляющее большинство готовых CMS, а чем шире выбор реализации - тем шире возможности разработчика, так что оставим холивары и от общих моментов перейдем к конкретике.

Операционная система

На данный момент самыми распространенными операционными системами являются представители семейства Microsoft Windows(2000,XP,2003,Vista), MacOS X и Unix-подобные операционные системы, такие как GNU/Linux, FreeBSD, Solaris, и пр. Мак, по описанным выше причинам, трогать не будем, а про остальное кратенько распишем.

Полагаю, что пользователям одной ОС не слишком интересно читать про другую, поэтому Unix-оидам - кликнуть по этой закладке, а для Windows-пользователям - читать дальше.

Семейство Windows

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

Рассмотрим оба этих решения.

Установка DENWER

Информацию предоставил Kventor

Скачать последнюю, свежую версию за номером 3 вы можете с сайта разработчика Денвера. Файл подается в виде инсталлятора, так что вам нужно только закачать и кликнуть дважды по иконке запуска. Перед началом установки рекомендуется выключить фаерволы и антивирусы(предварительно, отключившись от сети Internet), чтобы не возникало проблем с установкой.

Установка Денвера не представляет из себя ничего сложного. По ходу вам будут задаваться наводящие вопросы вроде: да, нет. Если не хочется сильно вникать, можно просто отвечать везде "Да" - настройки по умолчанию вполне работоспособны. Так же во время установки будет создан дополнительный виртуальный диск(используется системная команда subst). По умолчанию предлагается буква «Z». Если диск с буквой «z» уже существует, предложите системе другую. С этим тоже соглашайтесь. И хоть в разделе «Мой компьютер» появится этот новый логический раздел, физически он будет расположен на том диске, куда установлен программный пакет DENWER ( у нас, по умолчанию - это диск «С»). На вопрос об автоматическом запуске сервера или ручном выбирайте ручное. Это несложно на самом деле. Зачем вам запускать сервер автоматически каждый раз при включении компьютера?

После установки на вашем Рабочем столе появятся три иконки сервера: Старт, Стоп и Рестарт. Пользоваться вы будете чаще всего первыми двумя. Для начала кликните на иконке Старт. Если вы ничего не напутали и пользуетесь Виндовзом ХР, а не древним 95-м, то запуск пройдет без сучка и задоринки.

Далее открываете любимый браузер и в адресной строке набираете:

http://localhost/

Здесь вы увидите начальную страницу Денвера с воплями «Ура! Чорт побери, оно таки заработало!». Явный признак того, что мы можем поздравить себя с успешно установленным сервером! Файлы движков заливать в папку z:\home\<имя_хоста>\www, где имя хоста - произвольное, написанное английскими буквами и цифрами. Допускаются также точки, тирэ и знаки подчеркивания(_). Примечание: создавать новые хосты нужно при выключенном denwer`е.

А для тех же, кто хочет себе полноценный веб-сервер, предлагаю читать дальше:

Apache+PHP+MySQL

  1. Скачиваем apache httpd отсюда: http://httpd.apache.org/download.cgi. Ленивым - прямая ссылка на версию 2.2.9: apache_2.2.9-win32-x86-openssl-0.9.8h-r2.msi
    • Устанавливаем. В процессе установки нет абсолютно ничего сложного, так как ни о чем конкретном он не спрашивает. Жмем везде «Да», «Далее», «Ок», ну, и «Готово»
  2. Скачиваем самую свежую версию PHP отсюда: php5-win32-latest.zip.
    1. Распаковываем куда-либо. Хотя бы в папку
      c:\php
    2. Установка подробно описана на официальной странице документации. По-простому это выглядит так:
      • Находим в папке установки apache файл
        conf\httpd.conf
      • Открываем его, и в самый конец дописываем строки:
        LoadModule php5_module "c:/php/php5apache2_2.dll"
        AddType application/x-httpd-php .php
        PHPIniDir "C:/php"
    3. Сразу включаем поддержку MySQL: в нашей папке
      c:\php
      ищем файл php.ini. Если его нет, переименовываем в него файл php.ini-dist. Правим php.ini следующим образом:
      • Находим строку «;extension=php_mysql.dll»
      • Убираем точку с запятой(;), чтобы получилось «extension=php_mysql.dll»
      • Сохраняем файл.
  3. Скачиваем MySQL отсюда: http://dev.mysql.com/downloads/. Версия 5.1.25 здесь: mysql-5.1.25-rc-win32.zip
    • Распаковвыаем, запускаем инсталлятор.
    • Информацию по настройке ищите здесь, благо, есть из чего выбрать.

После всех вышеперечисленных манипуляций, мы получаем полноценный веб-сервер с php и MySQL на платформе Windows. Более развернутое руководство вы можете найти в книге «Руководство по установке Apache, PHP, MySQL, SMTP под Windows NT/2000/XP». А Unix`оидам читать далее:

Системы семейства Unix

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

В современных дистрибутивах GNU/Linux, которые не урезаны до состояния голого скелета, набор, необходимый для создания веб-сервера поставляется на том же диске, где и ОС. Если мы не выбрали эти пакеты во время установки системы, не следует расстраиваться. Desktop-ориентированные дистрибутивы GNU/Linux имеют интегрированный центр управления пакетами, будь то rpmdrake для Mandriva, Synaptic для ALTLinux, Dpkg в Debian/Ubuntu и пр. Для FreeBSD это системная утилита sysinstall.

С использованием менеджера пакетов, установка веб-сервера становится элементарным делом, и выполняется на раз-два-три:

  1. Выбираем пакет apache-mod_php. Менеджер пакетов заявляет нам о завистях: необходимо установить apache-base и apache-conf. Не будем с ним спорить, он дело говорит! Пусть ставит :).
  2. Выбираем пакет mysql. Тут система предложит установить еще и mysql-common, чему припядствовать мы не будем.
  3. PHP с Apache уже связан, осталось связать его с MySQL, а делается это простой установкой пакета php-mysql(Ну, или php-mysqli) из того же репозитория.

Радуемся! Можно запустить серверы httpd и mysql вручную, а можно просто перезагрузиться, и все будет работать.

Корневая папка localhost`а по умолчанию находится по адресу

/var/www/html
Впрочем, поковыряв
/etc/httpd/conf/vhosts.d/00_default_vhosts.conf
, можно настроить множество виртуальных хостов, не забыв указать для этих доменных имен адрес 127.0.0.1 в файле
/etc/hosts

Из исходных кодов

Если же вы настолько суровы, что используете дистрибутив без централизованной системы управления пакетами, и/или предпочитаете устанавливать программы из исходных текстов, то для вас предложений конструктивнее "Скачать здесь - это, здесь - это, а это здесь - а потом ./configure && make && make install" из этой статьи не поступит.

Читаем README и INSTALL в архивах, и компилируем, указывая все необходимые опции.

В заключение

Искренне надеюсь, что статья была написана достаточно понятно и информативно. Если у вас есть, чем дополнить ее, или исправить, милости просим в комментарии.

Как дополнительный источник информации, могу также порекомендовать учебник по администрированию web-сервера Apache, и руководство по электронной коммерции, и книгу Александра Качанова: Букварь по PHP и MySQL, в которой более подробно рассказано об установке и настройке PHP и MySQL.

Статьи схожей тематики:

PHP-функция для получения полного URL текущей страницы

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

Очередная сборка Neutrino Atomic Edition 0.8.7-5

Mosquito Bloody Mary 0.2.1

Nanote lazyfox

Комментарии(38):

rss-лента

Добавлено: 2008-08-23 03:52:03, Юрий

ИнтерпрЕтатор

Добавлено: 2008-08-23 11:37:27, Bolzamo

Спасибо, исправил.

Добавлено: 2008-10-03 23:49:47, Ян

Спасибо, буду пытаться поставить, хотелось бы под линукс. Mandriva_2008Spring-Free пойдет?

Добавлено: 2008-10-04 15:34:17, Bolzamo

Под Mandriva все делается вообще просто!
В консоли под рутом пишем:
urpmi apache-mod_php
Далее отвечаем "Y" на вопрос, установить ли зависимости, потом командой:
urpmi mysql
Ставим СУБД. Также отвечаем "Y" на вопрос, ставить ли основные файлы и библиотеки.

urpmi php-mysql
После выполнения этой команды, у PHP устанавливается расширение для работы с MySQL.

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

Добавлено: 2008-11-25 13:30:34, grang

Очень полезная статейка. Теперь смогу устанавливать сайт в себя на компе, нормально его сделать (быстрее же работать будет) а потом готовый-готовусенький залить на настоящий сервер!!!! Класс!!!

Добавлено: 2008-12-23 12:28:37, igorj

класно доступно и просто

Добавлено: 2008-12-23 12:53:34, igorj

установил денвер запустил вставил в браузер http://localhost/ а там пустая страница что делать

Добавлено: 2008-12-23 14:25:33, Bоlzamo

Идти на офсайт денвера, и спрашивать у них. Я сам им не пользуюсь, предпочитая реальный доморощенный Linux-сервер.

Добавлено: 2009-01-05 17:02:41, Маргарита

Это просто чудо. что я нашла этот пост. давно ищу. Как то пробовала денвер поставить, и что-то не получалось, теперь все будет гуд! Я почти на 100 процентов уверена! Спасибо!

Добавлено: 2009-01-05 17:05:05, Герман

Только можно ли по детальнее, на счет комманд. Куда их вводить. Вот например: urpmi php-mysql?

Добавлено: 2009-01-06 21:18:37, Bolzamo

Если у Вас возникает этот вопрос, рекомендую для начала ознакомиться с книгой «Linux для чайников»: http://it-books.net.ru/p/1222527825/

Добавлено: 2009-02-04 19:01:50, Алла

Спасибо за ссылку для чаиников

Добавлено: 2009-02-10 10:22:18, Анна

Давно це шукала. Колись зайшла на цю статтю, але пробувала поставити Денвер, в мене не вийшло і я "забила" на це. А зараз прочитала про Апаче, думаю це буде шегше. Спробую. Дякую.

Добавлено: 2009-02-10 15:31:28, Ефим

А вот скажите,я скачал php6, значит ли это, что вместо php5apache2_2.dll надо писать php6apache2_2.dll? Если да, то что еще нужно сменить?

Добавлено: 2009-02-12 17:25:39, Bolzamo

Релиза php6 еще не было, не вникал. Тем более, под Windows. Курите man.

Добавлено: 2009-04-18 22:29:09, Lo-st

Я в winnt устанавливил apache 2.0 на виртуальный диск (созданный subst)... он у меня не запускается... как будто он ни в какую не хочет видеть созданный виртуальный диск (при установке не на виртуальный все работает нормально)

Добавлено: 2009-07-12 07:54:31, vtsvang

Кто спрашивал про denwer. Вы после установки нажимали на denwer_start(на рабочем столе)?

Добавлено: 2009-07-16 05:48:48, AlexD

"Кто спрашивал про denwer. Вы после установки нажимали на denwer_start(на рабочем столе)?"
----
:) жжошь!!!

Добавлено: 2009-09-09 08:53:04, Virus

Огромное спасибо, проще статьи я не видел. 5 с + единственное можешь подсказать как сделать чтобы допустим один форум был доступен по двум ip. А то у нас две под сети одна на 10.0.29 начинается а вторая на 10.0.22.

Добавлено: 2009-09-23 14:11:05, jojo97

очень полезная статья я хочу изучать пхп на своём ноуте и установил денвер клёвая штука СПАСИБО

Добавлено: 2009-12-06 00:20:10, Толя :)

Спасибо большое!! :)

Добавлено: 2009-12-15 18:44:36, Перевёртыш

Спасибо огромное!!! Самый полезный тутор который я видел всё кратко и понятно! :)

Добавлено: 2010-03-20 02:30:18, sevendigit

А как потом привязать доменное имя? Надо устанавливать еще и DNS-сервер?

Добавлено: 2010-03-23 14:00:03, Bоlzamo

Не обязательно. Вообще, зависит от того, чего надо добиться. Если для локальной машины тестовый стенд, то достаточно подправить файл hosts.
Если для локальной сети - можно поставить dns-сервер, например - bind9.
Если же сервер для интернетов - можно вообще не заморачиваться, и воспользоваться внешним DNS-сервером, где через удобную админ-панель можно привязать домен к ip-адресу сервера.

Добавлено: 2010-04-06 09:05:23, shaig

Такой вапрос:
1) У меня дома комп,хочу делать его web server-ом.обизательно ли надо устоновить windows server 2003 или можна и XP Professional?
2)Как в домашных условиях можна привязать доменное имя к сайту(у меня есть постаяанный интернет),обизательно ли получить для своего компа отделный ip-адрес?или можна проста делать регистрацию на бесплатным днс сервери но куда прописать данные потом?значить нужно поднять DNS server?значить нужен windows 2003

Добавлено: 2010-04-07 08:17:49, Bolzаmo

1) Можно и про, хоть хоум, необходимый функционал будет и там. Другое дело - вопрос целесообразности. Но по Windows-системам я не спец, в чем разница - не расскажу.
2) Нужен статический IP-адрес. DNS берем внешний. На внешнем DNS все нужные нам домены привязываем к своему IP-адресу. После этого настраеваем свой локальный веб-сервер на работу с виртуальными хостами по этим доменным именам, и радуемся.

Добавлено: 2010-04-07 12:06:43, shaig

А нам не нужна поднять DNS SERVER?KУДА НАДО ПРОПИСАТЬ ЕТИ ВНЕШНЫЕ DNS АДРЕСА?В СВОЙСТВА TCP/IP ? А КАК настраивать свой локальный веб-сервер на работу с виртуальными хостами по этим доменным именам ?если вам не ахота рассказать можеть дадите ссылку где есть инфо по етому вопросу

Добавлено: 2010-04-07 13:49:47, Bolzamo

shaig, еще раз внимательно перечитайте статью. Там есть ссылки на нужную литературу.

Добавлено: 2010-04-15 19:08:13, Anton

А если у меня в папке с php нет файла php5appache.dll???

Добавлено: 2010-04-15 19:12:43, Anton

И дайте пожалуйста ссылку на php!!!

Добавлено: 2010-04-16 09:02:54, Bolzamo

http://php.net/

Добавлено: 2010-07-26 12:10:32, сисОдмин

Посмотрел на дату публикации - посту уже почти 2 года, а комменты идут. Надо-же.
Автор, доморощенный Линукс конечно класс, но не для всех, а только для достаточно продвинутых.
Денвер хорош безусловно своей простотой, но он нифига не предназначен как локальный сервер, лишь как площадка для тестирования / разработки скриптов (те для работы ТОЛЬКО НА ОЛДНОМ ПК). И его простота - палка о двух концах. Привыкнув к его вспомогательным скриптам(типа создание БД с заведением юзера БД в одном окошке парой кликов) потом весьма трудно все это делать без таких костылей на реальном хостинге.
Все это к тому, что на мое имхо, XAMPP предпочтительнее даже для новичков. Все придется делать ручками, плюс курить маны на аглицком, но пользы будет намного больше.

Добавлено: 2010-09-06 11:51:29, DieselxXx

Пошаговая инструкция установки веб-сервера. Apache+MySQL+PHP+phpMyadmin Ubuntu|Debian http://thetech.com.ua/?p=492

Добавлено: 2010-11-11 10:57:10, Kirill

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

А сиcОдмину охота сказать, что по вашей логике нужно и еду не в магазине покупать, и тем более не полуфабрикат, а выращивать самостоятельно, и курить мануалы что когда окучивать или кормить. Так будет значительно лучше. Всего знать нельзя, и что-то должно быть просто.

Добавлено: 2011-01-31 19:46:25, ячч

Всьо неверно!

Добавлено: 2011-03-16 02:14:06, Георгий

Предлагаю всем, что касается
связки Apache+PHP+MySQL готовый вариант. Вам будет только нужно:
1.Создать каталоги в указанном месте.
2.Проинсталировать Apache и
MySQL, распаковать PHP в указанный каталог.
3. Скопировать настроенные файлы в указанные папки и
проверить на работоспособность. На все про все пол часа. Пошлите сообщение на E-mail: tambger@yandex.ru и вам придет бесплатно вся необходимая для этого информация.

Добавлено: 2011-05-10 13:02:00, Талами

Спасибо! Очень доходчиво и просто написано.

Добавлено: 2011-08-26 22:37:56, Вадим

Локальный сервер Apache+PHP+MySQL рабочее описание на сайте vedernikov.su Я ставил как там описано,все работает.

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

Ваше имя:*
Ваш email:*(не публикуется)
Ваш блог:
Ваш комментарий:*

Переносы строк и url-адреса преобразуются автоматически, не забудьте отделить их пробелами. html и bb-коды не поддерживаются.

Загадай желание - очистка крови. Очистка печени. продажа квартир без посредников в Орехово-Зуево Hizli tercume burada