Инструменты web разработчика. WAMPSERVER 2 – только новый софт

23 июня, 2008

Скриншот WAMPSERVER
Приятная новость для любителей пользоваться новыми версиями софта. В прошлом месяце обновился WAMPSERVER 2 – набор софта для web разработчиков. Фанатом новых версий я не являюсь :-) , поэтому попробовал WAMPSERVER только сейчас. До этого пользовался WAMP 1.7.3, о которой я уже рассказывал (статья «Установка и настройка WAMP5»).

Одним из основных достоинств WAMPSERVER является то, что он включает практически самые новые компоненты (Apache, PHP, MySQL, SQLitemanager, Phpmyadmin). Посмотреть их версии и скачать дистрибутив можно здесь.

Кроме того, в состав дистрибутива входит панель управления (открывается левым кликом по иконке в трее), которая обеспечивает удобное управление серверами и предоставляет быстрый доступ к Phpmyadmin и SQLitemanager.

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

Теперь об установке и настройке. Тут все просто. Если вы пользовались WAMP 1.x, то сначала нужно его удалить, а потом устанавливать WAMPSERVER 2. Процесс установки практически идентичен, но после нее требуется небольшой «тюнинг».

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

Во-первых, так удобнее создавать резервные копии (вы собираете все ваши данные в одной папке и бекапите ее).

Во-вторых, проще выполнять обновления.

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

Итак, сразу после установки выполняем следующие операции.

Примечание. Здесь и дальше я предполагаю, что при установке вы указали папку C:\wamp\.

1) Настройка Apache.

Открываем файл C:\wamp\Apache2\conf\httpd.conf и настраиваем параметры:

DocumentRoot "E:/www/" – папка, в которой будут находиться ваши сайты.
<Directory "E:/www/"> – разрешаем доступ к этой папке.

Кроме того, можно сразу подключить mod_rewrite, для этого убираем символ комментария перед строкой
LoadModule rewrite_module modules/mod_rewrite.so

И подключаем файл, в котором будем хранить настройки виртуальных хостов.
Include "e:/ www/configs/vhosts.conf"

Примечание. Подробнее об их настройке можно почитать в статье «Установка и настройка WAMP5».

2) Настройка PHP

Выполняется с помощью файла php.ini, который находится в папке веб сервера (Apache), а не PHP.
C:\wamp\bin\apache\apache2.*.*\bin\php.ini

В нем я только подключил XDebug
zend_extension_ts="c:/ xdebug/php_xdebug-2.0.0-5.2.2.dll"

Если вы хотите использовать PHP в CLI режиме, то нужно скопировать этот файл в папку C:\wamp\bin\php\php5.*.*

3) Настройка MySQL

Конфигурационный файл:
C:\wamp\bin\mysql\mysql5.*.*\my.ini

В нем настраиваем следующие параметры:
datadir=E:/www/mysql_data – папка, в которой будут находиться файлы баз данных;
default-character-set=utf8

Дальнейшие действия будут зависеть от того, обновляете вы WAMPSERVER или устанавливаете его впервые.

Если обновляете, и файлы баз данных уже находятся в папке E:/www/mysql_data, то делать вам ничего не нужно, MySQL просто будет их использовать. Сохранятся все данные, включая имена и пароли пользователей. Именно по этой причине я советую хранить эти файлы отдельно.

Если устанавливаете впервые, то, прежде всего, установите пароль для root'а. Для этого, находясь в папке C:\wamp\bin\mysql\mysql5.*.*\bin выполните команду
mysql -u root
и два SQL запроса:

  1. UPDATE mysql.user SET Password=PASSWORD('root_pass') WHERE user='root';
  2. FLUSH PRIVILEGES;

После этого переносим содержимое C:\wamp\bin\mysql\mysql5.*.*\data в E:/www/mysql_data (папку, конечно, можно выбрать любую, главное правильно указать путь к ней в параметре datadir в файле my.ini).

4) Настройка PHPMyAdmin

Открываем файл C:\wamp\apps\phpmyadmin2.*.*\ config.inc.php
И устанавливаем значения для параметров:
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['compress'] = TRUE;
$cfg['Servers'][$i]['password'] = 'root_pass';

Теперь, при желании, можно скопировать файл index.php из C:\wamp\www в E:\www\. Это стартовая страница WAMPSERVER, кстати, очень неплохая. Показывает версии Apache, PHP, MySQL, список загруженных расширений, есть ссылки для просмотра phpinfo и запуска PHPMyAdmin и SQLitemanager.

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

$wampConfFile = 'C:/wamp/wampmanager.conf';

$aliasDir = 'C:/wamp/alias/';

Вот, пожалуй, и все. Можете запускать WAMPSERVER и приступать к работе :-)

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

Удачи!

Понравилась статья? Подписывайтесь на продолжение rss link !

Или на мой твиттер twitter link

]]>

Добавьте эту страницу в google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

]]>

Опубликовано в PHP, Web разработка View Comments

]]>
  • Seregnius Nikitini
    А кто нибудь делал доступ из вне?

    У меня статический IP,
    промапил порт 80
    жму Сделать доступным из вне

    просит ввести логин и пароль (при выключенном тоже) а где их взять или что не так???
  • Я не совсем понял, что вы сделали.
    Доступ к apache открывается в httpd.conf.
    Там по-умолчанию есть настройки
    <directory "="" "e:="" www="">
    ...
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
    </directory>

    Здесь и нужно доступ открывать.
  • Сергуня
    Владимир xdebug не подскажите откуда скачать? (гугл на меня огорчился)
  • Сергуня
    Подскажите пожалуйста в чём причина:

    Устанавливаю ВАМП с ноля
    добавляю пароль пользователя через консоль
    прописываю пароль в настройках и другие атрибуты по образцу выше

    после чего phpmyadmin выдаёт

    SET CHARACTER SET 'utf8';

    Ответ MySQL:
    #2006 - MySQL server has gone away

    порбовал cp1251 тоже самое
  • Сергуня
    Виновником оказалась кодировка latin1 в таблице user поля Password и вот это $cfg['Servers'][$i]['compress'] = TRUE; - за что она отвечает? и нужна ли вообще???
  • Сергуня
    B ещё вопрос в настройкай php.ini пишем
    В нем я только подключил XDebug
    zend_extension_ts="c:/ xdebug/php_xdebug-2.0.0-5.2.2.dll"

    откуда на С появится папка xdebug ???
  • Вы её сами создадите и скопируете в неё dll-ку с xdebug
  • Алексей
    Подскажите, где именно нужно прописать --> Include "e:/ www/configs/vhosts.conf" ?
    Насколько я помню, файл конфига апача состоит из нескольких разделов, и определенные команды прописываются в соответствующих разделах.
    Или тупо в конце файла дописать можно?

    В самом конфиге нашел строчку
    # Virtual hosts
    #Include conf/extra/httpd-vhosts.conf
    К чему она?
    Заранее благодарен.
  • Можете добавить
    Include "e:/www/configs/vhosts.conf"
    сразу под
    #Include conf/extra/httpd-vhosts.conf (это пример подключения файла с конфигурацией)
  • Сергей
    Здравствуйте!
    Странный случай.
    Работал в WAMP 2.0d
    База данных в кодировке ср1251_bin.
    Сайт локально работал.
    Решил попробовать последний WAMP 2.0i.
    Сделал дамп базы. Инсталлировал WAMP.
    Закачал базу. Все прекрасно. В phpMyAdmin база выглядит как было.
    Но на сайте одни крякозябры - выдается в кодировке UTF8.
    Если ввести новую запись с сайта - картина обратная.
    На сайте - кириллица, а в базу пишется в UTF8.
    В РНР mysql_query("SET NAMES cp1251")стоит где надо.

    show variables дает следующее
    character_set_client cp1251
    character_set_connection cp1251
    character_set_database cp1251
    character_set_filesystem binary
    character_set_results cp1251
    character_set_server latin1
    character_set_system utf8
    collation_connection cp1251_bin
    collation_database cp1251_bin
    collation_server latin1_swedish_ci

    Где собака зарыта?
  • Сергуня
    открой my.ini и в раздел [mysqld] в самом низу вписываем команду:
    default-character-set=cp1251 (если вам нужна другая кодировка - пишите ее)
  • Хороший вопрос :)
    У вас не остались старые конфиги (версии 2.0d)?
    Я бы попробовал сравнить их с помощью WinMerge.
    Кроме того, нужно поискать все параметры в которых указана кодировка (UTF-8).

    Я на последнюю версию wamp до сих пор не перешел, поэтому точно сказать не могу.
  • паша
    как создать базу mysql в вампе?
  • Через phpmayadmin или консоль.
  • Денис
    Здравствуйте !
    мне не совсем понятно про команды в папке )))
    как её выполнить и чем простите за тупой вопрос =[ :)
  • Пуск - Выполнить - cmd
    Откроется окно консоли.
    В нем
    cd C:\wamp\bin\mysql\mysql5.*.*\bin
    (вместо звездочек - номер версии mysql)
    После этого можно вводить команды
  • Gordon
    Доброго времени суток.

    Подскажите в чем может быть проблема. Ставлю ВАМП - не важно какую страницу открываю она всегда чистая:
    http://localhost/
    http://localhost/phpmyadmin
    127.0.0.1

    пробовал и тестовые пхп файлы кидать, все равно чистый лист.
  • Прежде всего проверьте запущен ли сервер. Пуск - Панель управления - Администрирование - Службы.
    Должны быть запущены wampapache и wampmysqld.
    Также проверьте, что 80-ый порт никто не использует. Например Skype.
  • Rodnoy
    Проблемы с кодировкой.
    Устанавливаю локаль:
    setlocale(LC_ALL, 'ru_RU.utf8', 'rus', 'russian');
    в htaccess
    AddDefaultCharset utf8
    Кодировка сообщений utf8.
    Даты сообщений в БД в формате 2009-08-13
    Все тексты, кроме названий месяцев выводятся нормально - русский текст в utf8.
    Названия месяцев года выводятся русским текстом в кодировке windows-1251 ???
    HTTP-заголовок:
    GET / HTTP/1.1
    Host: localhost
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2 GTB5
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
    Accept-Language: ru,en-us;q=0.7,en;q=0.3
    Accept-Encoding: gzip,deflate
    Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
    Keep-Alive: 300
    Connection: keep-alive
    Cookie: ci_session=
    Cache-Control: max-age=0
    Где ошибка
  • А откуда берутся названия месяцев? Из базы? Или они прописаны в скриптах (в этом случае нужно смотреть кодировку скриптов)?
    Кроме того, mysql позволяет указывать кодировки отдельно для каждого поля, этот момент тоже нужно проверить.
  • Rodnoy
    Даты сообщений в БД в формате 2009-08-13
    Вопрос решил переходом на Linux. А, вот подружить WAMP и Windows пока не получается. Windows категорически не признаёт Apache. Для отладки скриптов приходится тупо использовать iconv(); что не очень то удобно.
    Для любых установок при запросе
    setlocale(LC_ALL, '');
    Windows выдаёт:
    Russian_Russia.1251
  • Честно говоря, довольно странная ситуация. Я установил Wampserver с дефолтными настройками и все отлично работает в utf-8.
    Естественно я слежу чтобы файлы (со скриптами) и таблицы в базе были в этой кодировке.
    Никаких настроек в конфигах, касающихся кодировок не делал.
    Единственно после установки соединения с БД нужно явно указать кодировку
    $dbh->exec('SET CHARACTER SET utf8');
  • Rodnoy
    Вопрос, как оказалось, имеет давнюю историю - в инете дискуссия идёт с 2004г. (мой поиск через Gogle). Так что себя решил:


    По правде говоря, локаль - вещь довольно непредсказуемая и достаточно плохо переносимая между операционными системами. Так что, если ваш сценарий не очень велик, задумайтесь: возможно, лучше будет искать обходной путь, а не рассчитывать на локаль. Дмитрий Котеров. PHP 5.
  • Вопрос в следующем, реально ли вывести с вампа форум на домен, тоесть здесь функция присоединения к домену имеется? потому что я виртуалхост создал а происывать где домен не понял! спасибо
  • Каким образом вы создавали виртуальный хост? В его параметрах указывается домен.
  • bizdon
    подскажите, пожалуйста! Вопрос не по WAMPSERVER, а скорее по php. Не получается выполнить функции gmp; php_gmp в расширениях PHP подключена...
  • А хоть какие-то ошибки при этом возникают?

    Я попробовал запустить пример - работает. Ничего кроме подключения модуля в php.ini я не настраивал.

    В общем, присылайте описания ошибок, без них сложно что-то сказать.
  • bizdon
    Спасибо, Владимир, всё работает!
  • George
    В phpMyAdmin создаю таблицу базы данных, а каким образом можно настроить кодировку, что бы корректно отображалась браузером. Невозможно нечего прочитать после обработки рнр-файла на localhost. Латиниские шрифты отображаются нормально.
  • Вам нужно проверить все настройки, касающиеся кодировок. Это:
    1) настройки базы: Сопоставление соединения с MySQL и Сравнение - utf8_unicode_ci или utf8_general_ci.
    2) в php скриптах - кодировка страницы - UTF-8. (meta http-equiv="content-type" content="text/html;charset=utf-8")
    3) сами php файлы должны быть в utf-8.

    Кстати, в phpMyAdmin данные вы видите нормально?
  • George
    вот ссылка по которой скачал Wampserver
    она указана на вашем сайте на этой же странице:
    http://sourceforge.net/project/downloading.php?groupname=wampserver&filename=WampServer2.0g-1.exe&use_mirror=jaist

    а latin1_swedish всеравно присутствует даже после SQL-запросов на установку utf-8.
  • Странно, давайте так.
    Создаете новую базу (в phpMyAdmin) и при этом указываете:
    1) Сопоставление соединения с MySQL - utf8_unicode_ci
    2) Сравнение - utf8_unicode_ci
    3) Создаете пустую таблицу
    И проверяете кодировки.
  • George
    В phpMyAdmin проблем со шрифтами нет, браузер работает верно.
  • Вы раньше писали, что создаете базу через phpMyAdmin, но ведь в нем при создании базы и таблиц явно указываться кодировки. Откуда взялись latin1 и swedish_ci?

    Изменить кодировку можно запросами:
    ALTER DATABASE `database_name` CHARACTER SET 'utf8';
    ALTER DATABASE `database_name` COLLATE 'utf8_general_ci';

    Кроме того, если в базе не много данных, можно сделать её дамп (через phpMyAdmin) и исправить вручную в нем кодировки.
    После этого удаляете все таблицы из базы и импортируете исправленный дамп.
  • George
    выполнил запрос в sql и вот что получилось,
    а теперь вопрос как все это исправить?

    SHOW VARIABLES LIKE 'character%'
    char_set_database = latin1
    char_set_server = latin1

    SHOW VARIABLES LIKE 'collation%'
    collation_database = latin1
    collation_server = swedish_ci
  • Попробуйте выполнить запросы
    SHOW VARIABLES LIKE 'character%'
    SHOW VARIABLES LIKE 'collation%'

    Что они выводят?

    более древние денверы работают на "ура"


    Кодировки не зависят от дистрибутива. Проблема исключительно в настройках web сервера и базы данных.
  • George
    с utf-8 теже проблемы, правда связка apache - php работает правильно все обявленные переменные отображаются браузером, а mysql работает только с латинскими шрифтами.
    И еще вопрос: более древние денверы работают на "ура", но создают виртуальный диск зачем?
  • <?php
    if ($expr)
    {
    echo "Hi!";
    }
    else
    {
    ?>
    вставка


    // - неработает программа
    // - изменял полж скобок, тегов
    // - restart services and PC
    // - меняется исключительно C:\wamp\www\my_site
    // - \testtest_mysql.php on line 10
    // - точно тоже было с другой програмкой
    // - эти програмки можно использовать для проверки MySQL
    // - когда я настраивал PHP MYSQL APACHE отдельно без wampa
    // - вот та програмка которая заработала после установки wampa
  • На вашем сайте коды срабатывают при раз. сами собой
  • Если не получается вставить код, отправьте мне его почтой. А еще лучше словами опишите, что вы хотите сделать и что не работает.
  • Здравствуйте. Благодарен за размещение информации.
    Благодарен заранее.

    Создать файл с расширением bat?
    в папку C:\wamp\mysql\bin и выполняем команды:
    mysql -u root
    UPDATE mysql.user SET Password=PASSWORD('new_pass') WHERE user='root';
    FLUSH PRIVILEGES;
  • Можно так, а можно просто из консоли выполнить. Операция ведь выполняется только один раз.
  • Владислав
    ой извините ! Нашел
  • Владислав
    извените конечно Владимер но я уже пол ночи сижу и не могу настроить по Вашим словам это сервер!
    Вот Вы пишете:
    Выполняется с помощью файла php.ini, который находится в папке веб сервера (Apache), а не PHP.
    C:\wamp\bin\apache\apache2.*.*\bin\php.ini

    нет и в помине там такого файла! Что делать то?
  • Юрий
    Добрый день, установил WAMP2, сделал корректировки согласно статье, все это на своем ПК. Идет попытка соединения c localhost/phpmyadmin (sqlitemanager), но безуспешно. Приложения не рисуются в броузере, хотя они крутятся.
    Где могла потеряться связь?

    Спасибо
  • Прежде всего, проверьте, работают ли службы. Пуск - Настройка - Панель управления - Администрирование - Службы. Должны быть запущены (состояние - Работает) wampapache и wampmysqld. В браузере по адресу http://127.0.0.1/ должна отображаться стартовая страница WAMP. Если вы ее видите, а зайти в phpmyadmin или sqlitemanager не можете, то проверяйте их конфиги.
    Или напишите какую ошибку вы видите, можно скриншот прислать.

    А что значит "приложения крутятся"? Как вы это определили?
  • Николай
    Добро пожаловать в phpMyAdmin 2.11.6

    phpMyAdmin не смог установить соединение с сервером MySQL. Проверьте хост, имя пользователя и пароль установленные в конфигурационном файле config.inc.php и удостоверьтесь, что они соответствуют данным полученным от администратора сервера MySQL.

    Ошибка
    Ответ MySQL:

    #1045 - Access denied for user 'root'@'localhost' (using password: NO)

    Вот скопирова,что мне пишет админ

    СПАСИБО!!!
  • Похоже вы не указали в настройках PhpMyAdmin пароль для доступа к БД.
    В файле
    C:\wamp\apps\phpmyadmin2.*.*\config.inc.php

    нужно сделать такие настройки
    $cfg['Servers'][$i]['extension'] = 'mysqli';
    $cfg['Servers'][$i]['compress'] = TRUE;
    $cfg['Servers'][$i]['password'] = 'root_pass';

    Вместо root_pass нужно указать ваш пароль.

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

    Если что-то не получится - пишите ;)
  • Николай
    Здравствуйте!
    Я поставил wampserver2.0 , но не могу настроить как вы описываете, сейчас прога выдает ошибку по паролю, я уже два раза удалил wampserver2.0 с компа почистил реестр, а при запуске админа снова появляется красная надпись и ни чего не дает делать. Я новичок только учусь не могли бы Вы подсказать где удалить Файлы что бы исчезла надпись и по подробнее по установки wampserver2.0
    СПАСИБО!!!
blog comments powered by Disqus ]]>