Web разработка. Установка и настройка WAMP5

Владимир | | PHP, Разное.

Эта статья об установке и настройке WAMP – одного из самых распространенных наборов программ для web разработки. В его состав входят: Apache 2.2.4, PHP 5.2.4 + PECL, SQLiteManager, MySQL 5.0.45, PHPMyAdmin и общая панель управления. По идее, все программы набора должны быть готовы к работе сразу после установки. В принципе, так оно и есть, но чтобы получить такие же настройки, как и на сервере хостера, придется «поиграться» с конфигурационными файлами.

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

UPD 17.06.2010. На данный момент ситуация с Denwer'ом изменилась. В состав Денвер-3 входят Apache 2 + SSL, PHP 5.3, MySQL 5.1, phpMyAdmin, работа с Flash-накопителем. Есть возможность выбрать между PHP 5.3 и PHP 5.2. Т.е. дистрибутив стал намного лучше и с ним можно комфортно работать.

В отличие от Denwer’а в состав WAMP входят практически последние версии программ. Поэтому после установки вам не придется ничего обновлять. Безусловно, можно установить каждый компонент отдельно. В этом нет ничего сложного, но придется дольше возиться с настройками, и не будет общей панели управления.

Так что, если у вас нет каких-нибудь специфических требований, то можете спокойно устанавливать WAMP. Никаких ограничений в смысле функциональности не будет.

Установка

Здесь все просто. Нужно указать папку, в которую будет установлен WAMP (например, c:\wamp\). Ответить на вопрос об автоматическом запуске при старте Windows (я отказался), и указать SMTP сервер (можно оставить localhost). Кроме того, вряд ли вы захотите размещать ваши сайты прямо в папке с WAMP’ом, поэтому укажите для DocumentRoot какую-нибудь более подходящую директорию (например, d:\www\).

Первые впечатления

Раз с установкой закончили, запускаем. В трее появляется иконка, которая отображает текущее состояние серверов Apache и MySQL. Щелчок по иконке открывает панель управления WAMP.

Панель управления WAMP

Кстати, эта панель – одна из основных причин, из-за которых я установил WAMP. Она позволяет в два клика остановить/запустить/перезапустить любой из серверов или оба одновременно, зайти в PHPMyAdmin, SQLitemanager, localhost, посмотреть лог-файлы и многое другое. В общем, очень удобно.

Настройка

Сразу после установки у меня возник вопрос: «А какой пароль доступа к базе данных (для root)?». Как оказалось, подключаться к БД нужно вообще без пароля. Естественно, это нужно сразу исправить. Поэтому заходим в папку C:\wamp\mysql\bin и выполняем команды:
mysql -u root
UPDATE mysql.user SET Password=PASSWORD('new_pass') WHERE user='root';
FLUSH PRIVILEGES;

Примечание: после смены пароля PHPMyAdmin не сможет подключиться к БД. О том, как это исправить, я расскажу чуть ниже.

Следующим этапом идет настройка сервера Apache

Его конфигурационный файл находится здесь:
C:\wamp\Apache2\conf\httpd.conf
Если вы планируете использовать виртуальные хосты, то добавьте в этот файл строку:
Include "d:/www/virtualhosts.conf".
В этом файле будут находиться настройки хостов (название и размещение файла роли не играет).

Еще можно сразу подключить модуль перезаписи URL (Apache mod rewrite). Этот модуль используют большинство современных движков и фрэймворков. Для этого удаляем точку с запятой в начале строки
LoadModule rewrite_module modules/mod_rewrite.so

PHP

Вот тут начинается самое интересное. WAMP содержит два (!)файла php.ini. Один расположен в папке C:\wamp\php, а второй – в папке C:\wamp\Apache2\bin. Учтите, что используется именно второй файл, и все настройки нужно вносить именно в него. Почему разработчики сделали именно так, для меня загадка. Наверное, хотели сказать, что программирование не должно быть слишком простым 🙂 .

В этом файле я изменил только количество памяти, выделяемое для скриптов:
memory_limit = 16M (по умолчанию установлено 8М, но этого не достаточно даже для запуска WordPress).

CLI режим. Если вы попробуете запустить скрипт не через сервер, а из командной строки, то получите сообщение об ошибке (PHP пишет, что не может найти какую-то библиотеку). Проблема в том, что при запуске через Apache используется php.ini, расположенный в C:\wamp\Apache2\bin, а при запуске из командной строки – php.ini из C:\wamp\php. Поэтому просто копируем php.ini из C:\wamp\Apache2\bin в C:\wamp\php.

Чтобы каждый раз не вводить путь к php.exe, добавьте C:\wamp\php в системную переменную PATH.

MySQL

Пароль для root’а мы уже установили. Теперь, при желании, можно перенести сами базы данных в какую-нибудь отдельную папку (так удобнее будет делать backup’ы).
Для этого:
1) создаем папку, в которой будут находиться базы (например, e:\mysql_data);
2) останавливаем сервер MySQL;
3) изменяем параметр datadir в файле C:\wamp\mysql\my.ini:
datadir= e:/mysql_data
4) переносим содержимое папки C:\wamp\mysql\data\ в e:\mysql_data\;
5) запускаем сервер.

Кроме того, я изменил кодировку БД:
default-character-set=utf8

PHPMyAdmin

Если вы попытаетесь сейчас запустить PHPMyAdmin, то увидите сообщение об ошибке. Помните, мы установили новый пароль для root’а. Естественно, PHPMyAdmin его не знает. Поэтому, открываем C:\wamp\phpmyadmin\config.inc.php и указываем пароль:
$cfg['Servers'][$i]['password'] = 'new_pass';
Кроме пароля, я изменил еще два параметра:
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['compress'] = TRUE;

Создание виртуальных хостов

При настройке сервера Apache в httpd.conf мы подключили файл «d:/www/virtualhosts.conf«.

Для создания хоста выполняем следующие шаги:
1) останавливаем Apache;
2) придумываем название хоста и создаем для него папку (она будет задана в параметре DocumentRoot). Например, название — www.simplecoding.orgl; а папка – d:/www/my_site;
Примечание: я задал название корневого домена orgl. Вы можете использовать любое название, главное чтобы локальные хосты не путались с интернетовскими.
3) открываем файл C:\WINDOWS\system32\drivers\etc\hosts и добавляем в него строку с названием нашего локального хоста и его IP адресом:
127.0.0.1 www.simplecoding.orgl
Примечание: адрес 127.0.0.1 всегда указывает на локальный компьютер.
4) В файле virtualhosts.conf задаем настройки хоста:
<VirtualHost 127.0.0.1>
ServerName www.simplecoding.orgl
DocumentRoot "d:/www/sites/my_site"
</VirtualHost>

5) запускаем сервер.

Все, хост создан. В этом примере показаны только минимальные настройки. Полная информация о создании виртуальных хостов находится в документации к серверу Apache.

В завершение хочу сказать, что, несмотря на некоторые недостатки, я считаю WAMP5 одним из лучших наборов программ для web разработки.

Постовой

На сегодняшний день фриланс может стать реальной альтернативой обычной работе. Заработать в интернете не сложно, главное, приложить усилия 😉