Web разработка. Установка и настройка WAMP5
Эта статья об установке и настройке 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. Она позволяет в два клика остановить/запустить/перезапустить любой из серверов или оба одновременно, зайти в 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 разработки.
Постовой
На сегодняшний день фриланс может стать реальной альтернативой обычной работе. Заработать в интернете не сложно, главное, приложить усилия
Понравилась статья? Подписывайтесь на продолжение
!
Добавьте эту страницу в
Tweet
Опубликовано в PHP, Разное Комментарии (386) »
Вы можете оставить комментарий. Трекбеки закрыты.
-
Scratch
-
Scratch
-
http://www.simplecoding.org/ Владимир
-
Олег
-
Олег
-
Scratch
-
Scratch
-
Scratch
-
Scratch
-
http://www.simplecoding.org/ Владимир
-
Scratch
-
Scratch
-
Scratch
-
Scratch
-
http://www.simplecoding.org/ Владимир
-
Scratch
-
Scratch
-
http://www.simplecoding.org/ Владимир
-
Рустам
-
Рустам
-
http://www.simplecoding.org/ Владимир
-
Рустам
-
Рустам
-
http://www.simplecoding.org/ Владимир
-
Дмитрий
-
Дмитрий
-
http://www.simplecoding.org/ Владимир
-
Hinin
-
Hinin
-
http://www.simplecoding.org/ Владимир
-
Hinin
-
Hinin
-
http://www.simplecoding.org/ Владимир
-
Hinin
-
Hinin
-
http://www.simplecoding.org/ Владимир
-
Hinin
-
Hinin
-
http://www.simplecoding.org/ Владимир
-
Илья
-
http://www.simplecoding.org/ Владимир
-
http://blog.scratch613.info/ Scratch
-
Илья
-
http://blog.scratch613.info Scratch
-
Илья
-
http://blog.scratch613.info/ Scratch
-
http://www.simplecoding.org/ Владимир
-
http://blog.scratch613.info/ Scratch
-
Илья
-
http://blog.scratch613.info Scratch
-
http://blog.scratch613.info Scratch
-
Dikij
-
Dikij
-
http://www.simplecoding.org/ Владимир
-
Артем
-
http://blog.scratch613.info/ Scratch
-
Артем
-
http://blog.scratch613.info/ Scratch
-
Артем
-
http://blog.scratch613.info Scratch
-
Артем
-
http://blog.scratch613.info Scratch
-
Артем
-
Артем
-
Артем
-
http://blog.scratch613.info/ Scratch
-
http://blog.scratch613.info/ Scratch
-
Артем
-
http://blog.scratch613.info Scratch
-
http://blog.scratch613.info Scratch
-
Артем
-
http://www.simplecoding.org/ Владимир
-
Артем
-
Артем
-
Артем
-
starro_serge
-
http://www.simplecoding.org/ Владимир
-
starro_serge
-
starro_serge
-
starro_serge
-
starro_serge
-
starro_serge
-
starro_serge
-
http://www.simplecoding.org/ Владимир
-
starro_serge
-
starro_serge
-
starro_serge
-
alexi
-
http://www.simplecoding.org/ Владимир
-
alexi
-
starro_serge
-
http://www.simplecoding.org/ Владимир
-
starro_serge
-
starro_serge
-
starro_serge
-
http://www.megalenta.com/ Павел
-
http://www.simplecoding.org/ Владимир
-
http://www.megalenta.com Павел
-
DesweR
-
http://www.simplecoding.org/ Владимир
-
DesweR
-
DesweR
-
DesweR
-
DesweR
-
http://www.megalenta.com/ Павел
-
http://www.simplecoding.org/ Владимир
-
DesweR
-
DesweR
-
DesweR
-
http://www.simplecoding.org/ Владимир
-
DesweR
-
http://www.simplecoding.org/ Владимир
-
DesweR
-
DesweR
-
DesweR
-
http://www.simplecoding.org/ Владимир
-
DesweR
-
DesweR
-
http://www.simplecoding.org/ Владимир
-
DesweR
-
DesweR
-
DesweR
-
DesweR
-
DesweR
-
http://www.megalenta.com Павел
-
DesweR
-
DesweR
-
DesweR
-
DesweR
-
DesweR
-
DesweR
-
DesweR
-
DesweR
-
DesweR
-
сотник
-
http://www.simplecoding.org/ Владимир
-
сотник
-
Hinin
-
http://www.simplecoding.org/ Владимир
-
http://www.simplecoding.org/ Владимир
-
Hinin
-
Hinin
-
Hinin
-
WEBAdmin
-
http://www.simplecoding.org/ Владимир
-
WEBAdmin
-
NIks
-
http://www.simplecoding.org/ Владимир
-
NIks
-
Виктор
-
Виктор
-
http://www.bs-ed.ru/ Репетитор
-
http://www.simplecoding.org/ Владимир
-
http://www.bs-ed.ru Репетитор
-
lennaganci
-
lennaganci
-
lennaganci
-
lennaganci
-
lennaganci
-
lennaganci
-
lennaganci
-
http://www.simplecoding.org/ Владимир
-
lennaganci
-
Tatiana
-
http://www.simplecoding.org/ Владимир
-
Tatiana
-
Tatiana
-
http://www.simplecoding.org/ Владимир
-
Tatiana
-
Tatiana
-
Scratch
-
Scratch
-
Tatiana
-
Scratch
-
http://www.simplecoding.org/ Владимир
-
http://www.simplecoding.org/ Владимир
-
Tatiana
-
Tatiana
-
Tatiana
-
Tatiana
-
Tatiana
-
Tatiana
-
Tatiana
-
Tatiana
-
Scratch
-
Scratch
-
Tatiana
-
Scratch
-
Tatiana
-
Tatiana
-
Tatiana
-
Scratch
-
Tatiana
-
Tatiana
-
Scratch
-
http://www.simplecoding.org/ Владимир
-
http://www.simplecoding.org/ Владимир
-
Scratch
-
http://www.simplecoding.org/ Владимир
-
Tatiana
-
Scratch
-
Scratch
-
Tatiana
-
http://www.simplecoding.org/ Владимир
-
Scratch
-
http://www.simplecoding.org/ Владимир
-
Tatiana
-
Scratch
-
Tatiana
-
Tatiana
-
http://www.simplecoding.org/ Владимир
-
Scratch
-
Tatiana
-
Tatiana
-
Scratch
-
Scratch
-
Tatiana
-
Scratch
-
Scratch
-
Tatiana
-
Scratch
-
Tatiana
-
Scratch
-
Tatiana
-
Tatiana
-
ххх
-
http://www.simplecoding.org/ Владимир
-
ххх
-
WEBAdmin
-
http://www.simplecoding.org/ Владимир
-
WEBAdmin
-
http://www.simplecoding.org/ Владимир
-
WEBAdmin
-
WEBAdmin
-
kalistro
-
http://www.simplecoding.org/ Владимир
-
kalistro
-
Валерий
-
http://www.simplecoding.org/ Владимир
-
Валерий
-
http://www.simplecoding.org/ Владимир
-
Валерий
-
Валерий
-
виталий
-
http://www.simplecoding.org/ Владимир
-
виталий
-
Антон
-
http://www.simplecoding.org/ Владимир
-
Антон
-
starro_serge
-
http://www.simplecoding.org/ Владимир
-
starro_serge
-
http://www.pozdrav.org.ru/ sany
-
http://www.simplecoding.org/ Владимир
-
http://www.pozdrav.org.ru sany
-
Игорь
-
http://www.simplecoding.org/ Владимир
-
Игорь
-
DeannRie
-
http://www.simplecoding.org/ Владимир
-
DeannRie
-
http://www.simplecoding.org/ Владимир
-
DeannRie
-
DeannRie
-
serg777z
-
http://www.simplecoding.org/ Владимир
-
serg777z
-
http://www.simplecoding.org/ Владимир
-
http://www.simplecoding.org/ Владимир
-
serg777z
-
serg777z
-
serg777z
-
http://www.simplecoding.org/ Владимир
-
serg777z
-
Сергей
-
http://www.simplecoding.org/ Владимир
-
Сергей
-
Luba
-
http://www.simplecoding.org/ Владимир
-
Luba
-
http://lagunof.blogspot.com/ Сергей
-
http://www.simplecoding.org/ Владимир
-
http://www.noon.am Noon
-
http://lagunof.blogspot.com Сергей
-
Vetal Dobreff
-
Karnovall
-
http://www.simplecoding.org Владимир
-
Karnovall
-
http://www.simplecoding.org Владимир
-
Alandar
-
http://www.simplecoding.org Владимир
-
Alandar
-
Alandar
-
http://www.simplecoding.org Владимир
-
Alandar
-
Alandar
-
http://www.simplecoding.org Владимир
-
Alandar
-
http://www.simplecoding.org Владимир
-
Alandar
-
http://www.simplecoding.org Владимир
-
Igor
-
http://www.simplecoding.org Владимир
-
Alandar
-
Igor
-
http://www.simplecoding.org Владимир
-
Igor
-
http://www.simplecoding.org Владимир
-
w1rt
-
http://www.simplecoding.org Владимир
-
w1rt
-
Dfgh
-
http://www.simplecoding.org Владимир
-
Сергей
-
http://www.simplecoding.org Владимир
-
Shodi-88
-
http://www.simplecoding.org Владимир
-
http://www.facebook.com/profile.php?id=100002065234289 Владислав Сіріньок
-
http://www.simplecoding.org Владимир
-
Hamrazov
-
http://www.simplecoding.org Владимир
-
Lvyosha
-
http://www.simplecoding.org Владимир






