Локальный сервер для windows 7. Локальный сервер (localhost): какой выбрать и как создать

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

Что такое локальный сервер?

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

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

Все CMS а-ля WordPress и Joomla содержат в себе PHP скрипты. Соответственно, чтобы сайты, созданные с помощью систем управления содержимым, могли работать на домашнем компьютере, необходим локальный сервер.

Мой сайт создан с помощью WordPress, постоянно приходится тестировать какие-то плагины, расширения, копаться в PHP коде. Вполне логично, что рано или поздно, такие действия могут привести к утрате работоспособности сайта, из-за допущенной ошибки. Само собой большинство хостингов поддерживает восстановление (бек ап) сайта и базы данных. Да и грамотные веб мастера держат, на всякий случай, запасную на своем компьютере. Я вообще параноик, кроме хостинга и моего компьютера, еще и на флешку записал. Надо будет еще куда-нибудь на облачный сервис закинуть =).

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

Собственно говоря, с перечисленными задачами и проблемами (и не только) поможет справиться локальный сервер.

Как создать локальный сервер?

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

Как установить локальный сервер?

Один из самых популярных и стабильных локальных серверов – Денвер (Denwer) . Название расшифровывается как: джентльменский набор веб разработчика – Д. н. в. р. Его установку мы то и рассмотрим.

Базовый пакет содержит:

  • Инсталлятор.
  • Сервер Apache.
  • PHP 5.
  • MySQL5, поддерживающая транзакцию.
  • phpMyAdmin - система управления MySQL, позволяющая работать с базами данных через браузер.
  • Эмулятор sendmail и SMTP-сервера – имитация функции отправки почты. Все отправленные письма будут расположены в директории Z:\tmp\!sendmail в формате.eml, а не отправляться на указанную почту.

Одним из плюсов можно назвать то, что сервер можно установить на флеш-накопитель. И где бы вы ни оказались, вы сможете работать над своими проектами.

Ну и, конечно же, самый главный плюс – Denwer абсолютно бесплатен.

Установка Denwer

    1. Запускаем скачанный файл и соглашаемся с установкой базового пакета.

    2. Затем, откроется окно браузера, которое необходимо закрыть для продолжения или отмены установки.
    3. Для продолжения установки нажимаем Enter.

    4. Затем, необходимо указать директорию, в которой будут расположены файлы. По умолчанию: C:\WebServers. Смело жмем Enter и продолжаем.

    5. Следуя инструкции, жмем Enter.
    6. Далее, инсталлятор предложит выбрать букву виртуального диска. По умолчанию предлагается буква Z. Если на компьютере нет диска с таким именем, то можно смело продолжать установку, нажав Enter, если же есть – то выбираем другую.

    7. После того как все файлы дистрибутива будут скопированы, предложат на выбор 2 варианта создания виртуального диска:
    1. Виртуальный диск создавать при включении компьютера.
    2. Создавать виртуальный диск только при явном вызове, то есть – при клике ярлыка старта на рабочем столе (я выбрал этот вариант).

Вот собственно и все, на этом установка Денвера окончена.

Теперь можно протестировать работу локального сервера. Если все сделано верно, то на рабочем столе появятся 3 ярлыка: Start Denwer, Stop Denwer, Restart Denwer.

Нажимаем Start Denwer для запуска. Если зайти в мой компьютер, то можно увидеть, что появился выбранный локальный диск. А в трее (возле часов) появятся 2 значке в виде шляпы и пера.

Откройте окно браузера и в адресную строку введите следующее: http://localhost/

Откроется окно с сообщением: «Ура, заработало!», символизирующее, что все сделано правильно и можно смело приступать к роботе с локальным сервером.

Открывшаяся страничка содержит много полезного:

  1. Можно найти необходимую документацию по PHP, MySQL, Apache, Perl, PostgreSQL, воспользовавшись соответствующим поиском.
  2. Так как Денвер – бесплатный софт, то для поддержания проекта, создатели принимают от благодарных пользователей пожертвования. Ну, и я заметил партнерскую ссылку на хостинг «Джино».
  3. Можно проверить работу компонентов, перейдя по следующим ссылкам:

subdomain.localhost/ssl.php - проверяем активен ли SSL.

subdomain.localhost/ - проверяем "не-Интернет" домены второго уровня, а также SSI

test1.ru/ - проверка доменов второго уровня.

subdomain.test1.ru/ - проверка поддоменов (субдоменов)

localhost/Tests/phpnotice/index.php - можно проверить перехват PHP Notice.

localhost/Tests/PHP5/index.php5 - информация по PHP 5.

localhost/Tools/phpMyAdmin - доступ к phpMyAdmin и MySQL.

custom-host:8648 - проверяем хост с другим IP-адресом и портом (127.0.0.2:8648)

localhost/Tests/sendmail/index.php - проверяем работу sendmail (отправка почты).

Сайт в Денвере отображается иероглифами

Проблема с иероглифами иногда случается, если используется кодировка utf-8. В Опере и Хроме, вместо моего текста выводились жуткие наскальные надписи. А Internet Explorer, как ни странно, все показывал как надо. Но как бы там ни было, проблему надо решать. И сделать это можно следующим способом:

Создать в корневой директории сайта (в папке www) файл.htaccess и прописать там следующее: AddDefaultCharset UTF-8

Если же файл уже есть, то просто добавляем туда эту строчку.

Как удалить Денвер?

Удалить через панель управления – удаление программ Денвер не получится, так как он не пишет файлы в директорию Windows и не оставляет записей в реестре, соответственно деинсталлятор не нужен. Поэтому, просто удаляем папку с файлами локального сервера (предварительно остановив работу Денвера с помощью ярлыка на рабочем столе): C:\WebServers, удаляем ярлыки с рабочего стола и из Автозагрузки.

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

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

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

Если же вы грамотный администратор и полностью понимаете, что вы делаете, то что бы открыть доступ к локальному сайту следует:

  1. Прежде всего, необходимо иметь статический ip адрес. Динамические айпишники будут меняться при перезагрузке машины (роутера).
  2. В Windows есть встроенный антивирус - брандмауэр, который блокируют доступ с внешних компьютеров. Для того, чтобы сделать локальный сайт доступным, эту блокировку необходимо отключить в Пуск - брандмауэр Windows. Следует понимать, что это так же снизит защиту компьютера.
  3. Ну, и последнее, что нужно сделать – создать на виртуальном диске Денвера такую иерархическую структуру из папок: /home/192.168.0.1/www

Вместо указанного в предыдущем пункте ip адресе, необходимо указать свой, выданный вашим интернет провайдером.

В случае если провайдер предоставляет, кроме айпишника, еще и привязанный к нему домен, то сайт будет доступен по нему.

В следующей статье рассмотрим установку WordPress на локальный сервер.

ВСЕХ С НАСТУПАЮЩИМ 2014 НОВЫМ ГОДОМ!!!

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

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

Почему нельзя?

Вы уже, наверное знаете, чтобы поместить свой сайт в Интернет, нужно зарегистрировать доменное имя, купить хостинг, то есть дисковое пространство на каком-то компьютере с высокоскоростным подключением, на котором могут работать PHP скрипты. Чтобы сайты полноценно работали, должен быть установлен PHP и MySQL. Все это не доступно на обычном компьютере. Как могут запускаться файлы HTML и PHP на вашем компьютере?

Обычный файл можно открыть с помощью Notepade++ или даже с блокнота. Там внутри что-то написать, сохранить и потом без особых проблем открыть данный файл на своем браузере и посмотреть, как бы этот файл выглядел на хостинге в Интернете. То есть мы уже видим рабочую HTML страницу. В ней мы можем создавать определенный дизайн, контент и наблюдать за проектом без подключения к Интернету. Все, по сути, у нас уже есть. Если мы захотим запустить PHP файл с помощью браузера, то у нас ничего не получится, так как PHP скрипты в операционной системе Windows без дополнительного программного обеспечения работать не будут.

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

Что такое сервер?

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

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

Список лучших веб серверов

В настоящее время на рынке присутствуют несколько решений от самых разных производителей:

  • (сайт — apache.org ) — это самый распространенный и популярный бесплатный сервер в сети. Он является более надежным и гибким. Сервер не требователен к ресурсам процессора и способен обслуживать множество сайтов. Приложение доступно для широкого спектра операционных систем, включая Unix, Linux, Solaris, Mac OS X, Microsoft Windows и другие. На данный момент использование Apache составляет 71 %. Однако, это сложная программа, с которой не каждый новичок сможет справится.

  • (сайт — www.iis.net ) — еще один надежный сервер от компании Microsoft. Он жестко укрепился на втором месте с 14 % использования в сети. После установки программы, будут поддерживаться только два языка программирования (VBScript и JScript ). Однако, можно открыть дополнительные возможности, установив для этого нужные расширения. С установкой таких модулей, функциональность данного сервера значительно повышается.

  • NGINX (сайт — nginx.org/ru/ ) — это наиболее популярный веб-сервер в российском Интернете. По сравнению с двумя первыми, он является наиболее простым и не обладает лишними функциями. Также его хвалят за надежность и высокую скорость работы. Разработчиком данного продукта является наш соотечественник — Игорь Сысоев. В 2004 году он выпустил первую версию nginx. Сейчас этот программный продукт замыкает тройку самых популярных веб серверов в мире. Его использование составляет около 6,5 %.

  • (сайт — litespeedtech.com ) — этот веб сервер не обладает широкими возможностями, но зато у него очень большая скорость работы. По быстродействию он сильнее популярного Apache в 9 раз. Немало внимания уделено и безопасности (своя защита от перегрузки системы, строгая проверка http-запросов, анти-ddos и многое другое ). LiteSpeed доступен для Solaris, Linux, FreeBSD и Mac OS X. Доля использования этой программы составляет 1,5 %.

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

Особенности локального сервера

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

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

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

Обзор популярных локальных серверов

Вот некоторые сборки, которые могут пригодиться вам:

  • (сайт — denwer.ru ) — это бесплатный отечественный сервер, который предназначен для работы с сайтами, веб-приложениями или Интернет страницами. Его разработчиками являются Дмитрий Котеров и Антон Сущев. Данный продукт содержит необходимые дистрибутивы для упрощенной работы. Например, сюда входит веб-сервер Apache с различной поддержкой, панель phpMyAdmin и MySQL для работы с базами данных и другие программы. Также можно работать со съемной флешки. К сожалению Denwer поддерживает только операционную систему Windows.

  • XAMPP (сайт — www.apachefriends.org/en/xampp.html ) — специальная сборка сервера от друзей Apache. Необходимые дистрибутивы позволяют запустить на нем полноценный веб сервер. Данная программа распространяется бесплатно и поддерживает работу в системе Windows, Solaris, Mac OS X и Linux. Также есть следующие преимущества: сервер популярен своим очень простым пользовательским интерфейсом, что делает его любимым для многих начинающих; наблюдается многократные появления обновленных версий; процесс обновления проходит очень просто и удобно для пользователя; присутствуют дополнительные модули. Скачать нужную версию вы также можете с другого официального сайта — sourceforge.net/projects/xampp/files .

  • (сайт — www.appservnetwork.com ) — отличный сервер от тайского производителя, концепцией которого является легкая установка и настройка всех дистрибутивов за 1 минуту. Первый релиз сборки состоялся в 2001 году и с тех пор количество пользователей все время растет. AppServ очень прост в установке, он работает стабильно и не хуже официальных и отдельных релизов, а его надежная производительность дает возможность создать полноценный веб сервер на вашем компьютере.
  • (сайт — vertrigo.sourceforge.net ) — еще один неплохой и простенький в установке локальный сервер. Сборка очень гибкая, имеет хорошую производительность и занимает мало места на диске. К сожалению, пока работает только на ОС Windows.
  • Zend Server Community Edition (сайт — www.zend.com ) — бесплатный сервер от компании Zend, предназначен для работы с веб-приложениями. Содержит все необходимые компоненты для быстрого развертывания локального сервера на своем компьютере.

  • (сайт — open-server.ru ) — это отечественный портативный локальный сервер, который обладает высоким функционалом по разработке и созданию сайтов и других веб проектов. Имеет мультиязычный интерфейс (в том числе и русский ) и предназначен для работы в ОС Windows. Поддерживается работа со съемного носителя. Данный сервер очень хорош и служит неплохой альтернативой Денверу.

  • (сайт — wampserver.com ) — еще одна неплохая сборка с русским интерфейсом (есть также и другие языки ). Имеется простое и понятное меню, а удобная установка и настройка сборки не вызывает особых трудностей. Настройку можно производить не затрагивая файлы конфигураций, что очень полезно начинающим веб-мастерам. Сервер распространяется бесплатно и работает только на платформе Windows. К сожалению, портативной версии пока нет.
  • (сайт — easyphp.org ) — очень простенькая сборка с поддержкой русского языка. Сборка ни чем не примечательна, не имеет огромного функционала и в основном предназначена для тестирования небольших проектов. Есть поддержка работы с портативных носителей. Данный сервер послужит неплохой заменой Денверу.

Итак, это были наиболее популярные веб серверы, которые заслуживают внимания среди веб-мастеров. Как видите, здесь есть что выбрать. Скачать понравившийся сервер и подробно узнать состав его сборки вы можете на официальных сайтах, которые были указаны в описании. Скачивать данные сборки я вам рекомендую только с официальных сайтов, так как на других площадках могут выкладывать нерабочие дистрибутивы или с какими-нибудь вирусами. Теперь у многих отпадет желание «насиловать» свой хостинг, так как с таким ПО процесс создания сайтов и веб приложений станет более интересным и увлекательным! В общем, изучайте и внедряйте!

Несколько дней назад меня очередной раз посетила Мысль. Мысль была не нова и довольна навязчива: «давай перейдем на 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.

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

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

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

Прежде чем выложить сайт или блог в интернет, его следует протестировать, насколько правильно будет выглядеть дизайн сайта, как будут работать скрипты, форма обратной связи, плагины и так далее.
Вот по этой причине многие Веб-разработчики (блогеры, веб-дизайнеры или веб-программисты ) используют тестовые площадки, на которых они проводят проверки, пробы, эксперименты, в общем, любую тестовую работу над будущим проектом.
Существуют два способа по созданию тестовых площадок .
1. Тестовая площадка на хостинге
Некоторые новички используют для тестирования проектов платные хостинги, размещая при этом два сайта – один основной (рабочий) и второй дополнительный, тестовый.
Минусы такого способа :
- нехватка места на хостинге;
- низкая скорость интернета;
- не всегда есть деньги, чтобы купить платный хостинг для тестирования проектов.
2. Тестовая площадка на вашем компьютере
Этот способ, на мой взгляд, лучший. Его я хочу рассмотреть с вами более подробней. Вначале скажу о плюсах:
- не нуждается в подключении интернета;
- не нужны финансовые затраты
Что это за тестовая площадка на компьютере? Речь идет о локальном сервере , который устанавливается на ваш компьютер. С помощью локального сервера вы сможете легко и быстро протестировать проект.

Кто-то может сказать: а зачем вообще проводить тестирование своего проекта через локальный сервер? Ведь достаточно открыть файл «index.html » и мы увидим, как будет выглядеть сайт в интернете. Да, это правда, достаточно и этого, но если вы используете на сайте , чаты, форумы, различные (WordPress, Joomla, drupal), то здесь без локального сервера никак . Тем более, если вы используете для своего проекта CMS движок (WordPress, Joomla, drupal), то там нужна не только поддержка php, но еще и база данных MySQL.

Итак, локальный сервер – это специальный набор программ, обеспечивающий правильную работу скриптов прямо у вас на компьютере. В сборку входят: сам сервер, компилятор PHP (с его помощью браузер может прочитать php код и обработать правильно страницу ), компоненты для работы с БД (База Данных) и многие другие программы.

Подготовил для вас список популярных локальных серверов для сайта. Читайте, оценивайте, качайте и пользуйтесь.

Список популярных локальных серверов для сайта.

Denwer – это бесплатный локальный сервер для тестирования сайтов, веб-приложений или Интернет страниц. В Denwer входит: веб-сервер Apache, панель phpMyAdmin и MySQL для работы с БД (базами данных) и другие программы.
Локальный сервер Denwer работает только на операционную систему Windows.

Скачать можно с официального сайта denwer.ru

XAMPP это бесплатный локальный сервер для тестирования сайтов, веб-приложений или Интернет страниц с простым пользовательским интерфейсом. Поддерживает работу в системе Windows, Solaris, Mac OS X и Linux.

Скачать можно с официального сайта www.apachefriends.org/en/xampp.html

AppServ - еще один бесплатный локальный сервер. Быстрая и легкая установка.

Скачать можно с официального сайта www.appservnetwork.com

VertigoServ - простенький по установке локальный сервер.
Работает только в операционной системе Windows.

Скачать можно с официального сайта vertrigo.sourceforge.net

Zend Server Community Edition - бесплатный локальный сервер.

Скачать можно с официального сайта www.zend.com

Open Server - это бесплатный локальный сервер с высоким функционалом по разработке и созданию сайтов. Работает в операционной системе Windows.

Скачать можно с официального сайта open-server.ru

Лично я пользуюсь бесплатным локальным сервером . Почему Denwer, а не какой-то другой? Скорей всего привычка. Я начинал с локального сервера Denwer, потому только им и пользуюсь. А вам нужно самим выбрать, с каким локальным сервером будете работать.

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

При разработке web-страниц web-мастеру необходимо постоянно просматривать результат своей работы в браузере. Современные браузеры позволяют обрабатывать web-страницы, сделанные по технологиям HTML, CSS, с использованием языка JavaScript. Для просмотра таких страниц никакой сервер не нужен, достаточно возможностей любого браузера. Но если создается динамический сайт с использованием какого-либо серверного языка программирования, например, PHP, этих средств будет мало. Для обработки команд этого языка понадобится программа-сервер. Такая программа необходима и при работе с различными системами управления контентом (CMS), такими как Joomla или WordPress.

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

Что же такое локальный сервер? Зачем он нужен? Какие существуют локальные серверы?

Постараюсь ответить на эти вопросы.

Локальный сервер – это комплект программ, позволяющих работать со страницами, написанными на языках программирования PHP, Perl и др. В состав этого комплекта входит сервер (чаще всего Apache), модули языков программирования и систем управления базами данных (MySQL, Oracle и др.). Обычно все эти элементы собраны в единый пакет, чтобы упростить процесс установки и работы с локальным сервером.

Какие функции выполняет сервер? Как известно, динамические страницы не существуют в постоянном, записанном виде. Они формируются при запросе браузера. Каждая web-страница состоит из нескольких файлов (header.php, footer.php, index.php, menu.php идр.), составляющих шаблон. Также в этот шаблон вставляется контент, хранящийся в таблицах баз данных. Именно сервер формирует из этих файлов HTML-код страницы, которая выдается посетителю сайта уже как единое целое.

Какие существуют локальные серверы?

Начнем с самого «простого». Вы можете создать сервер самостоятельно. Для этого вам понадобиться скачать сервер Apache, пакеты PHP и MySQL, установить их на свой компьютер и начать работать. Конечно, все это не так просто, необходимы определенные знания программирования и работы с этими программами.

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

Рассмотрим некоторые из них.

Сервер AppServ

Один из популярных среди web-разработчиков сервер называется AppServ. Он скачивается в виде одного файла, легко, в несколько шагов, устанавливается. При установке необходимо указать имя сервера (обычно localhost), электронный адрес администратора, пароль доступа к базам данных.

После установки и запуска сервера можно проверить его работоспособность. Для этого в адресной строке браузера вводим localhost. У вас должна открыться страница сервера.

Сервер Apache Swissknife

Еще один сервер, который используется при разработке динамических сайтов, Apache Swissknife . Он также очень прост в установке и использовании. Для управления базами данных здесь используется программа MySQL-Front, которая проще, чем phpMyAdmin, но, все таки, именно последняя чаще используется на реальных интернет-серверах.

Мощным средством для разработки сайтов можно считать сервер Open Server. Это целая платформа с большим набором программного обеспечения, с большими возможностями по настройке. Его используют не только для отладки и тестирования сайтов, но и для работы в локальных сетях.

Многие вебмастера используют для разработки сайтов сервер XAMPP. Это мощный инструмент с различными функциями, но, в то же время, с простым интерфейсом. Скачать его можно по следующей ссылке. Здесь можно найти версии и для Windows, и для Linux, и для OS X. Система проста в установке и использовании. На этом же сайте можно скачать и различные приложения, устанавливаемые поверх XAMPP.

Но наиболее популярным среди web-мастеров считается локальный сервер Denver . Он разработан русским программистом Дмитрием Котеровым. Поэтому вся документация здесь на русском языке. Проект бесплатный. Название Денвер получено от сокращения Джентльменский набор web-разработчика. Скачать его можно по ссылке.

Денвер устанавливается очень легко и быстро. К тому же есть подробные инструкции и видеоуроки по работе с сервером. При запуске Денвера сразу создается виртуальный диск. На рабочем столе вашего компьютера будут созданы три ярлыка: Start Denwer, Stop Denwer, Restart Denwer. Они служат для запуска и остановки сервера.

При вводе в адресную строку localhost, у вас должна появиться такая тестовая страница.

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

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

Если вас заинтересовала статья, или вам есть, что добавить, оставьте комментарий.