Стандартный web сервер для windows. Как создать локальный сервер на Windows? Дополнение базами данных

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

Понятие локального сервера

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

Однако в большинстве случаев все эти компоненты имеют одну общую черту: создаются они изначально на локальных машинах на первых стадиях без размещения на удаленном хостинге, что позволяет их настраивать и редактировать непосредственно на своих собственных компьютерных терминалах.

Сейчас попытаемся рассмотреть вопросы, касающиеся того, как создать и настроить локальный сервер на компьютере, в зависимости от его типа и назначения

Выбор программного обеспечения

В принципе, выбор программного обеспечения - личное дело каждого пользователя. Тут стоит отметить, что, если, к примеру, при создании локального веб-сервера используются только языки гипертекстовой разметки вроде HTML или CSS, дополнительно устанавливать программные пакеты не имеет смысла, поскольку любой интернет-браузер прекрасно их «понимает».

Другое дело, когда в качестве дополнительных компонентов выступают скрипты, написанные, скажем, на PHP. Стоит их задействовать, и браузер уже не справляется. Вот тут и пригодится специализированное ПО. Что же касается прокси, DNS и игровых серверов, тут тоже ситуация неоднозначная. Несколько позже будут рассмотрены наиболее простые приложения для их создания и настройки, а пока остановимся на основном вопросе, касающегося стандартных локальных веб-серверов.

Как создать локальный сервер: установка и настройка пакета Denwer

Если уж вы решили заняться созданием локального сервера для последующего размещения на удаленном хостинге, естественно, потребуется какой-то инструмент. Чаще всего при поиске соответствующего ПО в Интернете пользователи получают переадресацию на скачивание программного пакета Denwer, который является отечественным продуктом и к тому же достаточно прост для понимания и работы с ним.

Он содержит все необходимые инструменты вроде Apache, PHP, MySQL, phpMyAdmin, sendmail и т. д. Единственный недостаток состоит только в том, что к нему дополнительно придется устанавливать специальные движки вроде в самом простом варианте.

Итак, создание локального сервера начинается с запуска инсталляционного EXE-файла (естественно, от имени Администратора). Появляется окошко, похожее на DOS-режим. Следуем указаниям установщика. Сначала выбираем место хранения данных сервера, затем назначаем литеру и режим работы виртуального диска (в принципе, предлагаемые параметры можно не изменять). На этом установка завершена. Теперь локальный сервер нужно проверить на предмет корректного функционирования.

Тестирование работоспособности

На данном этапе запускаем созданный сервер, а в окне любого интернет-браузера вводим http://localhost. Если программа инсталлирована без ошибок, браузер отобразит сообщение о том, что все работает.

Если пролистать страницу вниз, можно будет увидеть основные ссылки, по которым можно провести полное тестирование работы локального сервера.

Вопросы кодировки

Иногда можно встретить неприятную ситуацию, когда отсылаемое сообщение электронной почты выглядит в виде набора непонятных символов. Это происходит только потому, что программа изначально рассчитана на кодировку UTF-8. Ее можно совершенно элементарно изменить, например, на KOI-8R или что-то еще.

Установка локального сервера: дополнительные движки

Теперь еще один важный момент. Локальный сервер Windows-систем не может обойтись без специальных дополнений, называемых движками (WordPress, Joomla и т. д.).

Для начала в папке www, расположенной по пути \home\local host, в основной директории создаем произвольный каталог. После этого вводим в адресной строке браузера путь http://localhost/ и проверяем, что именно открывается. Если открылась именно все нормально. Копируем файлы движка в этот каталог при помощи любого файлового менеджера (хотя бы того же «Проводника») и вводим адрес заново. Появляется окно «Мастера установки», где нужно всего лишь следовать указаниям.

Дополнение базами данных

Теперь локальный сервер должен присоединить специальные базы данных. Для этого используется служба phpMyAdmin, вход в которую осуществляется посредством ввода в адресной строке браузера http://localhost/tools. Сначала выбирается раздел создания новой базы, ей дается название (можно произвольное, но лучше указывать такое же, какое было применено для папки в предыдущем разделе).

Затем возвращаемся на главную страницу и настраиваем параметры привилегий (создаем нового пользователя, указываем логин и пароль, в качестве хоста используем localhost и отмечаем «птичками» все, что есть в окне). Остается нажать кнопку «Пошел!» и дождаться окончания процесса.

Перенос локального сервера на хостинг

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

Настройка локального сервера в плане переноса данных на удаленный хостинг лучше всего производится приложением FileZilla, при помощи которого нужно скопировать файлы, находящиеся в вышеупомянутой директории, в корневой каталог хоста. Это либо папка PUBLIC_HTML, либо раздел HTDOCS. Теперь дело за малым: меняем так называемые абсолютные пути к папкам и файлам и директориям в настройках движка, указываем название базы данных, которую предполагается создать использовать уже на удаленном хосте, и указываем для хоста новый логин с паролем. Все. На этом работа завершена. Подключение к локальному серверу пользовательских машин может производиться через любой интернет-браузер.

Локальные прокси-серверы

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

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

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

Перед началом работы следует задать настройки прокси. К примеру, если используется браузер Opera, в параметрах серверов для HTTP нужно указать значение 127.0.0.1, 8080 - для порта. Теперь запускаем приложение, заходим в настройки и смотрим на вкладку «Дозвон». Как правило, программа сама определяет, какой тип подключения используется в данный момент. Далее нажимаем одноименную кнопку и пользуемся созданным сервером.

Да, обратите внимание: в настройках кэша можно указать размер порядка 300 Мб. По идее, этого должно хватить на все случаи жизни. Просмотреть содержимое можно в папке Cache основной директории, где была инсталлирована программа. И еще одно: запомните, это обычный прокси-сервер, а не анонимный, так что ждать от него изменения или сокрытия IP-адреса не стоит.

Локальные DNS-серверы

Локальный DNS-сервер можно использовать в случаях, когда связь нестабильна, локальная сеть имеет слишком большое ветвление на основе TCP/IP, или же вы занимаетесь веб-разработками и их тестированием. В принципе, для таких целей прекрасно подойдет программа BIND. Она хоть и рассчитана в основном на UNIX-подобные системы, тем не менее, прекрасно работает и с Windows (исходим из того, что на терминале установлена не серверная версия «Винды», которую можно настроить в «Панели управления»).

Запускаем и следуем инструкциям. Для удобства рекомендуется инсталлировать программу непосредственно на диск C, в создаваемую директорию BIND. Далее вводим логин и пароль, после чего активируем процесс установки и дожидаемся его завершения.

Теперь в папке C:\BINDetc нужно создать файл "название".conf, в котором прописываются настройки, которые будет использовать локальный сервер DNS (название произвольное и задается без кавычек). Чтобы не заниматься тратой времени, искомый файл можно запросто найти в Интернете и скачать его, поместив в указанное место.

Теперь перезагружаем систему, затем вызываем командную строку (cmd через меню «Выполнить» или сочетание Win + R), где прописываем запрос nslookup. Если происходит подтверждение, значит, сервер установлен правильно и работает без ошибок.

Локальные игровые серверы

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

Для настройки используем файл server.properties, куда вносим данные, предоставленные приложением Hamachi. Прописываем IP-адрес сервера, количество игроков, использование возможных режимов игры и т. д. В поле режима online-mode нужно в обязательном порядке указать значение true. После этого сохраняем изменения и закрываем файл.

Теперь определяем внутренний IP сервера, который будет использоваться игроками при подключении к терминалу, на котором он был создан. Компьютеры, естественно, должны быть объединены с самим сервером либо через локальную сеть, либо через VPN. IP-адрес серверного терминала должен быть статическим с обязательной привязкой к MAC-адресу.

Вход осуществляется при помощи приложения Minl2, где при регистрации указывается логин и пароль. После проделанных действий покидаем сервер и входим заново, но уже в оффлайн-режиме с использованием созданного логина и пароля. В разделе настроек выбираем Multiplayer и вводим искомый IP сервера. Все. Можно наслаждаться игрой с реальным противником.

Заключение

Конечно, это далеко не все нюансы, которые могут возникнуть при создании локальных серверов разного типа, и, конечно же, не все программы, которые помогают в этом процессе. Скажем так: это общие и основные принципы, заложенные в такие технологии. И если разобраться, ничего особо сложного здесь нет. Чуточку времени и терпения - и локальный сервер любого типа будет создан в течение 10-15 минут.

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

Проверено на Windows Vista SP1, Vista Ultimate, Windows 7

Ваши действия:

  1. Скачайте бесплатно с официальных сайтов следующие дистрибутивы:

    Настройка PHP интерпретатора

    1. Откройте двойным щелчком файл php.ini из папки C:\server\php\ .
    2. В разделе "Paths and Directories" должна присутствовать строка extension_dir ="C:\server\php\ext" .
    3. В разделе "Dynamic Extensions" найдите; Be sure to appropriately set the extension_dir directive. , внизу этой строчки поместите:
      extension=php_gd2.dll
      extension=php_mbstring.dll
      extension=php_mysql.dll
      extension=php_mysqli.dll
      extension=php_pdo.dll
      extension=php_pdo_mysql.dll
      extension=php_sqlite.dll
    4. Где-то в конце файла найдите строчку; End: и удалите все, что за ней следует.

    Сохраните измененный файл там же.

    Завершив редактирование файлов, создайте папку www в папке server и папку cgi-bin в папке www . Перезапустите компьютер. В результате в трее, в статусе сервера появился зеленый треугольник вместо красного квадрата, если нет и выведено окно с предупреждением об ошибке, значит изменение файла httpd.conf было неточным и вам прийдется внимательно все проверить, наклоны слэшей, кавычки и так далее.

    www — корневая директория (root directory) локального сервера, именно здесь следует сохранять все документы (папки, страницы, изображения, скрипты и другие файлы) вашего сайта.

    Тестируем PHP интерпретатор

    Создайте новый файл в редакторе (Notepad2 или Notepad+) и напишите код:

    echo phpinfo ();
    ?>

    Сохраните файл в директории C:\server\www\ как index.php . В браузере наберите http://127.0.0.1 или http://localhost/ ⇒ должна быть показана таблица:


    У меня все получилось! Если у вас есть какие-либо вопросы или пожелания, пишите в блог.

    Мы имеем локальный сервер в связке с интерпретатором и теперь можно изучать PHP.

    Тестируем соединение с сервером баз данных MySQL

    Небольшой скрипт:

    $dblocation = "127.0.0.1" ;
    $dbname = "test" ;
    $dbuser = "root" ;
    $dbpasswd = "" ; /* Укажите пароль который вы вводили при
    установке MySQL */
    $dbcnx = @ mysql_connect ($dblocation , $dbuser , $dbpasswd );
    if (! $dbcnx )
    {
    echo "Не доступен сервер mySQL" ;
    exit();
    }
    if (!@
    mysql_select_db ($dbname , $dbcnx ))
    {
    echo "Не доступна база данных" ;
    exit();
    }
    $ver = mysql_query ("SELECT VERSION()" );
    if(! $ver )
    {
    echo "Ошибка в запросе" ;
    exit();
    }
    echo mysql_result ($ver , 0 );
    ?>

    Сохраняем скрипт в папке C:\server\www\ как mysql.php и набераем в браузере http://localhost/mysql.php ⇒ будет показан серийный номер MySQL сервера :

    5.5.12
    1. Скачайте бесплатно дистрибутив менеджера по управлению базами данных с официального сайта php-myadmin.ru , последнюю стабильную версию, файлом с расширением all-languages.zip .
    2. Распакуйте архив в папку phpmyadmin , и поместите её в папку www .
    3. Скачайте config.inc.php , извлеките из архива и скопируйте его в папку phpmyadmin .
    4. Откройте config.inc.php , найдите строчку $cfg["Servers"][$i]["password"] = "pass"; ⇒ вместо pass укажите корневой пароль (root) , который вы использовали при установке сервера MySQL ⇒ сохраните файл.
    5. В браузере наберите http://localhost/phpmyadmin/ ⇒ будет показана титульная страница менеджера:

    Установив вышеперечисленные компоненты, мы получили полноценный локальный web-сервер и всё необходимое для организации дальнейшей работы.

    Были использованы материалы с сайтов: dev.mysql.com | php.net | php-myadmin.ru

Общие сведения о локальном сервере и принципе его функционирования. Создание локального сервера на основе сборки Денвер: подготовка, установка и первый запуск.

Любое программирование неотъемлемо от процесса тестирования — это аксиома. Говоря о разработке web-приложений, неизбежно встаёт вопрос наличия некой «среды», позволяющей эмитировать работу Интернет сервера. Другими словами, нам нужен локальный сервер .

Локальный сервер (англ. local server ) — программа или набор программ выполняющие сервисные (обслуживающие) функции по запросу клиента на домашнем (локальном) компьютере.

Такой «джентльменский набор» состоит из Apache, PHP и MySQL — этого обычно достаточно. С другой стороны, сюда могут входить и другие компоненты, в зависимости от ваших потребностей. Для нас же здесь важен тот факт, что мы можем воспользоваться готовой сборкой – Денвер . Таким образом, нам не придётся разбираться в особенностях установки и настройки локального сервера — всё сделано до нас.

Единственное на что я хочу обратить ваше внимание в работе локального сервера, это необходимость резервирования определённых IP-адресов под сервера, которые будут доступны только на нашем компьютере. В случае с Windows за резервирование IP-адресов отвечает файл hosts . В зависимости от версии Windows файл hosts может находиться:

  • Windows 95/98/ME: WINDOWS\hosts
  • Windows NT/2000: WINNT\system32\drivers\etc\hosts
  • Windows XP/2003/Vista/7: WINDOWS\system32\drivers\etc\hosts

Если вы решили использовать локальный сервер на базе дистрибутива Денвер, вам нет необходимости редактировать этот файл, всё будет происходить автоматически, но иметь общие представления о сути вопросу нелишне.

Подготовка к работе локального сервера

От слов к делу. Исходим из того, что вы уже скачали последнюю версию сборки Денвер и готовы ринуться на штурм цитадели. Шучу. Главное не спешить и первым делом проверить установлены на вашем компьютере сетевые протоколы или нет. Как это сделать? Самый простой способ:

Установка локального сервера

Теперь, когда мы убедились, что наш компьютер готов к работе с сетью, можно приступать к установке дистрибутива Денвер. Закройте все окна браузера(-ов). Запустив скачанный инсталлятор Денвера, вы увидите перед собой окно:

Окно инсталятора дистрибутива Денвер

Подтвердите свои намерения, кликнув кнопку «Да». Начнётся процесс распаковки. После чего откроется окно браузера с сообщением:

Сообщение в окне браузера

Закрываем окно браузера и продолжаем установку в окне инсталятора.

Следуя указаниям, производим установку дистрибутива Денвер.

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

  1. Директория, куда будет установлен дистрибутив. Советую оставить вариант по умолчанию, т.е. C:\WebServer — так что жмём Enter .
  2. Имя виртуального диска, который будет связан с только что указанной директорией. Советую оставить вариант по умолчанию, т.е. Z: . Главное чтобы диска с таким названием ещё не было в системе – чаще всего так и происходит с диском Z: . Так что снова жмём Enter .
  3. Запуск и остановка Денвера. Нам будет предложено два варианта:
    1. Создавать виртуальный диск при загрузке машины (естественно, инсталлятор позаботится, чтобы это происходило автоматически), а при остановке серверов его (диск) не отключать.
    2. Создавать виртуальный диск только по явной команде старта комплекса (при щелчке по ярлыку запуска на Рабочем столе). И, соответственно, отключать диск от системы - при остановке серверов.

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

    Примечание : в некоторых версиях Windows 98 может возникнуть ошибка, из-за которой виртуальный диск не отключается, по крайней мере, с первого раза. Это не ошибка дистрибутива, а ошибка в subst и тут ничего не поделать.

Вот собственно и всё, с установкой покончено.

Первый запуск локального сервера

Наконец, установка завершена. На Рабочем столе должны появиться три иконки: Start Denwer (запуск Денвера), (остановка Денвера).

Иконки управления Денвер

Кликаем иконку Start Denwer и ждём, пока исчезнут все всплывающие при загрузке консольные окна. Открываем браузер и набираем в нём адрес: http://localhost/ , а точнее http://localhost/denwer/ — но это не существенно. Выходить из Интернета при этом не обязательно. Главное что перед нами должна появиться следующая страница:

Тестовая страница при обращении к локальному хосту

Если же тестовая страница не загрузилась, проверьте:

  • Отключен ли у вас прокси-сервер в настройках браузера?
  • Запущен ли Денвер? Если да, нет ли ошибок при клике на иконке пера (см. в нижнем правом углу)?
  • Не запущен ли у вас какой-то другой web-сервер, который мог бы конфликтовать с Денвером? Если да, отключите его.

Возможны и другие варианты, но это уже не входит в рамки данной заметки.

Для разработки и тестирования сайтов или веб-приложений обычно используют локальный Web-сервер, а после разработки переносят уже на рабочий сервер. Поэтому сегодня я предлагаю рассмотреть возможность установки локального web-сервера на операционную систему Windows 7, и так как у нас сайт для начинающих разработчиков, мы будем использовать готовую сборку web-сервера на примере XAMPP .

И начнем мы с основ, т.е. узнаем, что же это такое сборка web-сервера, из чего она состоит, зачем она нужна, в частности разберем сборку XAMPP, установим ее и, конечно же, проверим ее работу.

Что такое сборка Web-сервера?

Сборка Web-сервера – это некий комплект приложений необходимых для функционирования сайтов, после развертывания которого, можно сразу переходить к их разработке, не отвлекаясь и не вникая в настройки каждого компонента web-сервера.

В сборку web-сервер обычно входит как минимум 3 компонента: это непосредственно сам HTTP сервер, средство разработки сайтов, т.е. библиотеки языка программирования, интерпретатор и т.д., и система управления базами данных. Для таких сборок используется бесплатное программное обеспечение, поэтому самыми распространенными компонентами являются веб сервер Apache, СУБД MySQL, языки программирования PHP и Perl.

Если говорить о том, для чего вообще нужна такая сборка, так как Вы сами понимаете, что все это в отдельности устанавливается и настраивается, то она нужна в основном для того, чтобы облегчить жизнь начинающим разработчикам, чтобы они могли просто установить одну программу и сразу начать, скажем, учиться программировать (создавать сайты). Для примера в качестве операционной системы нашего локального web сервера мы будем использовать Windows 7, так как именно ОС Windows от компании Microsoft широко используется у нас в России.

Конечно же, после того как разработка сайта или веб приложения окончена, необходимо перенести все на рабочий сервер, который скорей всего будет использовать операционную систему на базе Linux. Например, мы с Вами уже рассматривали возможность установки и настройки полноценного, рабочего web-сервера на CentOS 7.1 , где мы как раз по отдельности устанавливали и настраивали каждый из компонентов web-сервера, там мы использовали Apache, PHP и MySQL. Также если кому интересна установка СУБД MySQL на Windows, то это мы подробно рассмотрели вот .

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

В число самых популярных сборок web-сервера входят: Denwer, Open Server, XAMPP, WampServer . Как видно из названия статьи, сегодня мы будем рассматривать XAMPP.

Что такое XAMPP?

XAMPP — это бесплатная, кроссплатформенная сборка веб-сервера, которая включает Apache, MySQL PHP и Perl.

Как не трудно догадаться XAMPP — это аббревиатура:

  • X – означает, сборка есть под все операционные системы (Windows, Linux, OS X);
  • A – Apache;
  • M – MySQL;
  • P – PHP;
  • P – Perl.

В последнюю, на сегодняшний день (Июнь 2015 ), сборку XAMPP для Windows включено следующее программное обеспечение: Apache 2.4.12, MySQL 5.6.24, PHP 5.6.8, phpMyAdmin 4.3.11, OpenSSL 1.0.1, XAMPP Control Panel 3.2.1, Webalizer 2.23-04, Mercury Mail Transport System 4.63, FileZilla FTP Server 0.9.41, Tomcat 7.0.56 (with mod_proxy_ajp as connector), Strawberry Perl 7.0.56 Portable.

Где скачать XAMPP?

Загрузить данную сборку можно со страницы загрузки официального сайта — https://www.apachefriends.org/ru/download.html

И так как мы будем устанавливать XAMPP на Windows, то соответственно и скачиваем дистрибутив под эту операционную систему, например, я хочу скачать версию XAMPP с PHP 5.6.8 для этого, и жму соответствующую ссылку.


После чего у нас загрузится дистрибутив размером 107 мегабайт.

Данная сборка поддерживает операционные системы Windows, начиная с Vista.

Установка XAMPP

Приступаем к установке сборки Web-сервера XAMPP, она простая, поэтому проблем возникнуть не должно.

Шаг 1

Запускаем скаченный файл xampp-win32-5.6.8-0-VC11-installer.exe . Первое окно программы установки — это окно приветствия, жмем «Next ».


Шаг 2

Далее, выбираем компоненты, которые нужно установить, по умолчанию выбрано все, но если Вы не хотите что-то устанавливать, т.е. Вам это не нужно, то можете снять галочку с соответствующего пункта, например, мне не нужен Perl, жмем «Next» .


Шаг 3

Затем выбираем каталог, в который мы будем устанавливать XAMPP, я оставлю по умолчанию, жму «Next ».


Шаг 4

На этом шаге мы можем оставить или убрать галочку «Узнать больше о Bitnami для XAMPP », я галочку убрал, жму «Next ».


Шаг 5

Все готово к установке, жмем «Next ».


Установка началась.


После того как установка будет завершена, нам предложат сразу запустить «Control Panel », жмем «Finish ».


Вот и все, у нас запустилась панель управления XAMPP.


Запускаем и проверяем работу Apache, PHP и MySQL

Как мы видим, сразу после установки все сервисы не запущены, поэтому мы запускаем их кнопкой «Start ».


Зеленым выделены те сервисы, которые в данный момент запущены.

Сначала давайте проверим работу Apache, для этого просто в браузере набираем localhost, и если мы увидим следующую картину, то значит все в порядке.


Для проверки MySQL и PHP давайте напишем простой скрипт на PHP, который проверит подключение к базе данных MySQL. Для этого создаем в каталоге C:\xampp\htdocs\ папку test, кстати, все, что находится в папке htdocs, можно удалить. В папке test создаем файл index.php со следующим кодом;

Сервер баз данных недоступен

"; exit(); } //Проверка доступности базы данных if (!@mysql_select_db($dbname,$dbconn)){ echo "

База данных недоступна

"; exit(); } //Простой запрос, узнаем версию MySQL $VERSION = mysql_query("SELECT VERSION()"); if(!$VERSION){ echo "

Ошибка в запросе

"; exit(); } echo mysql_result($VERSION, 0); ?>

Сохраняем и в браузере обращаемся по адресу http://localhost/test/ в ответ мы должны получить версию MySQL.


Если Вы это удивили, значит и Apache и PHP и MySQL запущены и работают.

Теперь немного расскажу о панели управления XAMPP. Запустить ее можно через меню «Пуск->Все программы->XAMPP» .


После запуска в системном трее появится значок для быстрого управления, т.е. запуска и остановки сервисов.

На этом предлагаю заканчивать, так как все готово для разработки сайтов на базе Apache, MySQL и PHP, еще раз замечу, что данная сборка подходит исключительно для разработки и тестирования веб приложений, использовать ее в качестве рабочей платформы для сайтов не рекомендуется. Удачи!

Несколько дней назад меня очередной раз посетила Мысль. Мысль была не нова и довольна навязчива: «давай перейдем на Windows8. Ну пожааалуйста». И так как отогнать её никак не получалось, я запаслась чаем и печеньками и приступила.

На установку системы и всех необходимых программ ушло не более двух часов, но затем наступил самый интересный момент: мне нужно было развернуть рабочее окружение, а именно - GIT + локальный сервер (Apache, MySQL, PHP, nginx, memcached, mongodb). Помятуя об опыте предыдущих установок, на этот раз я решила весь процесс задокументировать и сохранить для потомков.

Дисклаймер номер раз: «я не программист» (с), а дизайнер интерфейсов и фронтенд-технолог (но в некоторых случаях могу помочь коллегам и накодить что-нибудь этакое, и меня даже потом за это не побьют)

Дисклаймер номер два: да, я прекрасно представляю, что в Ubuntu всё это делается в разы быстрее. Но я работаю на Windows, так исторически сложилось.

Итак, приступим.

Наш план работ включает установку следующих продуктов:

  1. PuTTY
  2. Denwer (Apache, MySQL, PHP)
  3. Nginx
  4. Memcached
  5. MongoDB

1. PuTTY

PuTTY - свободно распространяемый клиент для различных протоколов удалённого доступа, включая SSH, Telnet, rlogin.

В состав PuTTY входит несколько утилит, но мне в работе нужны только он сам и Pegeant (агент SSH-аутентификации, в котором хранятся ключи от git-репозиториев).
Офсайт:
Если вам не нужны никакие SSH-и, забудьте об этом пункте и идём дальше.

2. GIT

Для работы с git я уже не первый год использую TortoiseGit , который стабилен, гуёв и на 146% закрывает все мои потребности. Вобщем, рекомендую.


Офсайт:

2.1 Для работы TortoiseGit требуется git для Windows , который можно забрать на гуглекоде ;
2.2 сам TortoiseGit устанавливаем отсюда

3. Denwer

Денвер - Джентльменский набор Web-разработчика («Д.н.w.р», читается «Денвер») - проект Дмитрия Котерова, набор дистрибутивов (Apache, PHP, MySQL, Perl и т.д.) и программная оболочка, используемые Web-разработчиками для разработки сайтов на «домашней» (локальной) Windows-машине.
Офсайт:

3.1 Установка

Нам потребуется скачать базовый комплект и дополнительные модули PHP5 .

Лирическое отступление:

нет, не просто скачать, а получить ссылки на скачивание по email! То есть вам придется вбивать свою почту, а также имя и фамилию два раза в форме под большим заголовком «Регистрация». «Регистрация требуется в связи с будущим выходом Денвера-4.» уже который год как бы извиняется форма, но я ей больше не верю(.

Обычно установка денвера проходит быстро и безболезненно, но на Windows8 на меня напала ошибка, которая ругалась на отсутствующую библиотеку msvcr71.dll . Библиотеку можно и положить в папку "\Windows\System32\" (x32) или "\Windows\SysWOW64\" (x64). После того, как файл улегся в папку, откройте его свойства и нажмите кнопку «Разблокировать».

3.2 Проверка работоспособности

После установки Денвера, создадим тестовый скрипт, на котором будем проверять работоспособность всего того, что мы установим впоследствии.
Идем в Z:\home и добавляем новый сайт: создаем папку test.local , в ней папку «www» , в которую добавляем файл index.php с невероятно креативным текстом:

";

Перезапускаем Денвер, открываем в браузере www.test.local , впечатляемся и идём дальше

4. Memcached

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

Memcache - расширение для php, предоставляет удобный процедурный и объектно-ориентированный интерфейс к memcached, высокоэффективному кеширующему демону, который был специально разработан для снижения нагрузки на базу данных в динамических веб приложениях.

4.1 Установка memcached

А. скачиваем архив с бинарником: Memcached 1.4.5 for Windows отсюда
В. \usr\local\memcached

4.2 Установка memcache

А. скачиваем архив с библиотекой отсюда
В. распаковываем содержимое архива в \usr\local\php5\ext\
С. открываем файл php.ini (\usr\local\php5\php.ini ) и подключаем расширение:
extension=php_memcache.dll

4.3 Настраиваем запуск Memcached вместе с запуском Denwer

Чтобы запустить скрипт вместе с Денвером нам нужно:
  1. написать скрипт, содержащий команды запуска и останова приложения/ сервиса и положить его в папку \denwer\scripts\init.d
  2. создать ссылку на этот скрипт в папке конфигурации запуски/останова \denwer\scripts\main\

А. создаём файл с именем «memcached.pl» в директории \denwer\scripts\init.d\
#!perl -w package Starters::Memcached; BEGIN { unshift @INC, "../lib"; } use StartManager; my $basedir = "/usr/local/memcached/"; chdir($basedir); StartManager::action $ARGV, start => sub { ### ### START. ### print "Starting memcached\n"; system("memcached.exe -d"); print " Started!\n"; }, stop => sub { ### ### STOP. ### print "Stopping memcached\n"; system("TASKKILL /F /IM memcached.exe"); print " Stopped!\n"; }; return 1 if caller;

B. теперь создадим ссылку на скрипт – обычный текстовый файл, содержащий указание, что при старте, рестарте и остановке Денвера, необходимо выполнить init.d/memcached.pl
В текстовом редакторе пишем
init.d/memcached
и сохраняем файл под именем «40_memcached» в следующие папки:

  • \denwer\scripts\main\start
  • \denwer\scripts\main\stop
  • \denwer\scripts\main\restart

4.4 Проверяем результат

В наш тестовый скрипт (index.php) добавляем:
$memcache = new Memcache; $memcache->connect("127.0.0.1", 11211); echo ‘Memcache ver: ’ . $memcache->getVersion();

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

5. Nginx

Nginx - простой, быстрый и надёжный сервер, не перегруженный функциями.

Офсайт:

5.1 Настройка Nginx

A. скачиваем с офсайта Windows-версию и распаковываем в \usr\local\nginx
B. настраиваем виртуальный хост для нашего тестового сайта. Для этого открываем \usr\local\nginx\conf\nginx.conf и добавляем туда

Server { listen 127.0.0.1:80; server_name www.test.local test.local; if ($host = "test.local"){ rewrite ^/(.*)$ http://www.test.local$1 permanent; } location ~* \.(jpeg|jpg|gif|png|css|js|pdf|txt|tar)$ { root Z:\home\/test.local\www; } location / { ssi on; proxy_pass http://127.0.0.1:8080/; proxy_set_header X-REQUEST_URI $request_uri; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-for $remote_addr; proxy_set_header Host $host; proxy_connect_timeout 60; proxy_send_timeout 90; proxy_read_timeout 90; proxy_redirect off; proxy_set_header Connection close; proxy_pass_header Content-Type; proxy_pass_header Content-Disposition; proxy_pass_header Content-Length; root Z:\home\/test.local\www; } }
Это пример настроек из реального проекта, ваши настройки, очевидно, могут отличаться.

5.2 Настройка Apache

По-умолчанию Апач работает на 80-м порту, но мы только что отдали этот порт Nginx-у, поэтому теперь необходимо изменить шаблон для виртуального хоста в настройках апача и назначить ему порт, отличный от 80-го (например, 8080).
Открываем \usr\local\apache\conf\httpd.conf и изменяем номер порта

## ## НАЧАЛО ШАБЛОНА ВИРТУАЛЬНОГО ХОСТА. ## ## Если вы хотите по умолчанию запускать Apache на порту, отличном от 80, ## измените номер порта в следующей далее директиве. ## #Listen $&{ip:-127.0.0.1}:$&{port:-8080} #NameVirtualHost $&{ip:-127.0.0.1}:$&{port:-8080} # # DocumentRootMatch "/home/(?!cgi-)(.*)^1/(?!cgi$|cgi-)(.*)" # DocumentRootMatch "/home/(?!cgi-)(.*)/public_html^1" # DocumentRootMatch "/home/(?!cgi-)(.*)/public^1" # DocumentRootMatch "/home/(?!cgi-)(.*)^1/html/(.*)" # DocumentRootMatch "/home/(?!cgi-)(.*)^1/domains/(?!cgi$|cgi-)(.*)" # DocumentRootMatch "/var/www/html/(?!cgi-)~(.*)^1/(?!cgi$|cgi-)(.*)" # DocumentRoot "$&" # ServerName "%&/-www" # ServerAlias "%&/-www" "%&/-www/www" $&{host:-} # # $&{directives:-} # # ScriptAlias /cgi/ "$^1/cgi/" # ScriptAlias /cgi-bin/ "$^1/cgi-bin/" # AllowEncodedSlashes on #

5.3 Настраиваем запуск Nginx вместе с запуском Denwer

A. создаём файл с именем «nginx.pl» в директории \denwer\scripts\init.d\
#!perl -w package Starters::Nginx; BEGIN { unshift @INC, "../lib"; } use StartManager; my $basedir = "/usr/local/nginx/"; chdir($basedir); StartManager::action $ARGV, start => sub { ### ### START. ### print "Starting Nginx\n"; system("start nginx.exe"); print " Started!\n"; }, stop => sub { ### ### STOP. ### print "Stopping Nginx\n"; system("nginx.exe -s stop"); print " Stopped!\n"; }; return 1 if caller;

B. в текстовом редакторе пишем
init.d/nginx
и сохраняем файл под именем «50_memcached» в следующие папки:

  • \denwer\scripts\main\start
  • \denwer\scripts\main\stop
  • \denwer\scripts\main\restart

5.4 Проверяем результат

Положим рядом со скриптом файл style.css с содержанием
h1{ color: red; } h2{ color: green; }

И облагородим наш index.php :
Test me

Test me

Memcached

connect("127.0.0.1", 11211); echo "Memcached ver: " . $memcache->getVersion(); ?>
Теперь перезапускаем Денвер и любуемся результатом. Если CSS-файл подключился – Nginx работает нормально.

6. MongoDB

MongoDB - документо-ориентированная система управления базами данных (СУБД) с открытым исходным кодом, не требующая описания схемы таблиц.

Офсайт:

6.1 PHP-driver

А. Скачиваем библиотеку php_mongo.dll с этого сайта : и закидываем в папку \usr\local\php5\ext\
Методом проб и ошибок было установлено, что подходящий драйвер содержится в архиве mongo-1.2.5.zip/mongo-1.2.5-php5.3vc9ts.zip . Если у вас по какой-то причине не заведётся, попробуйте другие версии.

B. подключаем расширение в php.ini
extension=php_mongo.dll

6.2 Установка Mongo

А. скачиваем архив с Mongo и распаковываем в папку \usr\local\mongodb . В этой же папке создаем еще две папки:

B. устанавливаем службу
> cd C:\WebServers\usr\local\mongodb\bin\
> mongod.exe --install --dbpath=C:\WebServers\usr\local\mongodb\db\ --logpath=C:\WebServers\usr\local\mongodb\logs\

6.3 Настраиваем запуск MongoDB совместно с денвером

A. создаём файл с именем «mongod.pl» в директории \denwer\scripts\init.d\
#!perl -w package Starters::mongoDB; BEGIN { unshift @INC, "../lib"; } use StartManager; StartManager::action $ARGV, start => sub { ### ### START. ### print "Starting mongoDB\n"; system("net start mongoDB"); print " Started!\n"; }, stop => sub { ### ### STOP. ### print "Stopping mongoDB\n"; system("net stop mongoDB"); print " Stopped!\n"; }; return 1 if caller;

B. в текстовом редакторе пишем
init.d/mongod
и сохраняем файл под именем «60_mongod» в уже знакомые нам папки:

  • \denwer\scripts\main\start
  • \denwer\scripts\main\stop
  • \denwer\scripts\main\restart

6.4 Проверяем результат

Запустим консольный интерфейс mongo
> Z:\usr\local\mongodb\bin\mongo.exe

И выполним вставку и вывод тестового значения в базу “test”
> db.test.save({ name: “Habr!” })
> db.test.find()

В результате должно получиться следующее:

6.5. Установка интерфейса управления Mongo-базами

На офсайте MongoDB есть список и краткие обзоры админок , так что можно выбрать по вкусу.
Я для себя выбрала RockMongo , поэтому именно с её помощью мы окончательно удостоверимся, что у нас всё работает и никуда не падает.

А. скачиваем архив с админкой с этой страницы . Выбираем, естественно, версию для Windows . На момент написания статьи это RockMongo-on-Windows v0.0.4

B. из архива берём папку \rockmongo-on-windows\web\rockmongo и копируем её в директорию нашего тестового сайта
Открываем config.php и меняем значение параметра
$MONGO["servers"][$i]["control_auth"] = true;
на
$MONGO["servers"][$i]["control_auth"] = false;

C. Проверяем результат по ссылке www.test.local/rockmongo/index.php

Поздравляю! Теперь мы окончательные и бесповоротные молодцы.

Бонус №1. Работа с php из консоли Windows

Возможно, кому-то пригодится. Мне вот пригодилось, когда наш злобный техлид решил, что «SQL-файлы – это ващепрошлыйвек, давайте юзать миграции». Я, конечно, для приличия попыталась изобразить полное непонимание и даже пустить слезу, но была разоблачена и отправлена разбираться с тем, как это работает на Windows.
Оказалось, что всё что нужно для счастья – это прописать PHP директорию в PATH .


Нажимаем на «Изменить» и добавляем в конец строки
;Z:\usr\local\php5

Теперь проверим, что всё заработало.
В директории тестового сайта создадим файл console.php

Открываем консоль (можно прям из этой же папки – щелкаем правой кнопкой мыши с зажатым SHIFT-ом на пустом месте и выбираем пункт «Открыть окно команд»).
Вводим:
> php console.php “UserName”

Консоль отвечает:
> “Hello, UserName!”

PHP побеждён, всеобщее ликование, апплодисменты, занавес.

Бонус №2.

Все файлы и примеры, упомянутые в статье одним архивом бесплатно без смс: на гитхабе

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

Теги: Добавить метки