Даже, если вы никогда не вносите изменений в используемые вами php файлы, все равно не помешает настроить среду для их выполнения локально.
Во-первых, это позволит вам протестировать работу новых версий CMS и плагинов локально, без риска испортить рабочую версию сайта на хостинге.
Во-вторых, вы всегда будете иметь резервную копию сайта на диске вашего компьютера и в случае проблем с хостингом, сможете с минимальными потерями переехать к другому хостеру.
В-третьих, часто возникает необходимость просто посмотреть работу какой-либо CMS или плагина, “поиграть” с различными возможностями.
Если же вы редактируете какие-то файлы (например, меняете файлы темы в Вордпрессе) или, вообще, занимаетесь программированием на PHP, то локальная среда выполнения намного облегчит и ускорит процесс разработки и тестирования.
Несмотря на то, что на PHP хостингах установлена операционная система Linux, уже давно существует возможность установки всех необходимых программ под Windows. Причем, существует несколько способов это сделать.
Денвер
Самый простой вариант установить на компьютере с операционной системой Windows набор из Apache, PHP и MySQL – использовать Денвер (Джентльменский Набор Web-Разработчика). После его установки (которая является очень простой процедурой) вы получите готовые к использованию Apache, PHP и MySQL.
Работа с Денвером строится следующем образом. В специальном каталоге (настраивается при инсталляции) вы размещаете свои сайты, располагая их в подкаталогах, которые называются так же, как домены этих сайтов (например, developerguru.net для этого сайта).
При запуске Денвера названия этих подкаталогов считываются и производится модификация файла hosts: все найденные домены добавляются с локальным ip адресом. Таким образом, при запущенном Денвере, вы сможете открывать в браузере локальные версии сайтов.
Когда я только начинал разбираться с Вордпрессом и PHP, то воспользовался именно Денвером. Но в процессе его использования я столкнулся с некоторыми недостатками.
В частности, сейчас у меня есть несколько сайтов и если я занимаюсь отладкой любого из них при запущенном Денвере, то у меня при этом нет доступа к онлайновым версиям всех остальных сайтов (т.к. файл hosts перенаправляет все запросы на локальный сервер). Для многих это не будет проблемой, но мне эта особенность доставляла некоторый дискомфорт.
Но главной причиной, почему я решил отказаться от использования Денвера, стал переход на ОС Windows 7. На форуме Денвера есть тема про семерку. У части людей все работает, у части нет. Поэтому, я решил попробовать другой вариант – установить все компоненты по отдельности.
Установка Apache, PHP и MySQL
Я не люблю изобретать велосипед, поэтому, первым делом нашел несколько руководств по установке и настройке компонент. Вместо того, чтобы создавать еще одно, я просто дам вам ссылки:
- http://www.sdelaysite.com/kniga/verstka-kniga/apache-mysql-php-nastraivaem-sami
- http://www.codenet.ru/webmast/apache/Apache2-PHP5-MySql5/
- http://www.qoodo.ru/lessons-articles/for-site/14-apache-php-mysql-part-1.html
Первая ссылка самая толковая, на сайте есть еще и видео уроки по установке этих компонентов. Отмечу только, что я предпочел установить самые последние версии, скачанные с сайтов разработчиков.
С установкой Apache и PHP проблем почти не возникло. Единственное, что пришлось выключить встроенный в Скайп вебсервер, т.к. он занимал 80-й порт.
А вот с MySQL пришлось повозиться. Установился он нормально и я без проблем подключился к нему с помощью бесплатной HeidiSQL. Но из PHP подключиться не удавалось. Несколько раз проверив различные настройки и проведя множество экспериментов, удалось выяснить, что проблема кроется в том, что в Windows 7 PHP обращается к localhost по IPv6 — ::1 вместо IPv4 (127.0.0.1).
Эта проблема решается прописыванием строки
127.0.0.1 localhost
в файл hosts.
В целом, установка и настройка Apache, PHP и MySQL по отдельности значительно сложнее установки Денвера. Так что рекомендовать ее абсолютным новичкам не могу.
Кроме установки и настройки Apache, PHP и MySQL оставалось решить, что делать с доменами сайтов. Вордпресс, который я использую на многих сайтах, прописывает домен сайта в базу данных и с другим (тестовым) именем работать не будет.
Т.к. я обычно для отладки использую свежий дамп базы с рабочего хостинга, то менять каждый раз эти настройки в базе будет неудобно.
Поэтому, я решил использовать тот же подход, что и в Денвере – править файл hosts. Это можно делать либо руками, комментируя или раскомментируя нужные строки, либо с помощью специальной программы.
Я пользуюсь довольно удобной утилитой HostsMan:
Комментировать/раскомментировать нужную строку можно одним кликом мыши.
Существует еще возможность принудительного задания домена блога через wp-config.php, прописав в нем следующие строки:
1 2 |
define('WP_HOME','http://developerguru.net.loc'); define('WP_SITEURL','http://developerguru.net.loc'); |
В этом случае developerguru.net.loc прописываем в файле hosts и больше не трогаем. Если нужна локальная версия сайта, то открываем developerguru.net.loc в браузере.
Но сразу выяснилось, что адреса картинок все равно не меняются. Возможно, есть еще какие-то глюки, поэтому я решил не рисковать.
WampServer и другие
Кроме Денвера есть и другие пакеты, которые позволяют установить необходимые для работы под Windows компоненты. Например, WampServer. Но я их не использовал, поэтому, ничего конкретного сказать не могу.
Заключение
Я доволен своим решением установить Apache, PHP и MySQL в ручном режиме. В процессе настройки я стал лучше понимать их взаимодействие и работу.
Если же вы новичок с одним сайтом, то вашим выбором должен стать Денвер — это самый простой вариант получения рабочей среды хостинга на Windows.