СофтXAMPP — готовый комплект Web-сервера

Немногие в силах установить и настроить Apache, MySQL и PHP. А разрабатывать на PHP уже хочется сразу и именно сейчас. И чтобы не тратить время на изучение тонкой настройки Apache, MySQL и PHP, придумали именно готовые сборки Web-серверов, которые упрощают весь процесс установки и настройки. Но я думаю что для профессиональной разработки нужно все таки научиться устанавливать и настраивать Web-сервер самому. Конечно если у Вас уже есть хостинг платный или бесплатный, можно пользоваться им для проверки своих проектов, но это создать кучу ненужных на первых этапах разработки проблем, здесь нужен будет постоянный и высокоскоростной доступ в интернет, и хороший хостинг. А для того что бы не мучатся с хостингами, можно пока что что разрабатывать все на локальном компьютере, для чего собственно и нужен установленный Web-сервер. XAMPP — это один из немногих комплектов для разработчика который является кроссплатформенным, иными словами будет хорошо работать как на Windows так и на Linux, Mac OS X, Solaris.
XAMPP — отличное решение для начинающего web-программиста, так как опять же повторюсь не придется мучатся с настройками, и при прочтении какой то книги по PHP (например той о которой писал раньше — PHP – это просто. Программируем для Web-сайта. – А. Шкрыль) Вы сразу сможете испробовать все примеры из книги на практике, при этом не вдаваясь в подробности и тонкости настройки Web-сервера.

XAMPP - готовый комплект Web-сервера

Сегодня я попытаюсь рассказать о XAMPP, как его установить и вкратце о том как с ним работать.

XAMPP больше распространен у англоязычного населения, в то время как у русскоговорящих пользователей очень распространен Джентльменский набор Denwer. Почему я выбрал именно XAMPP — просто мне XAMPP кажется более удобным в использовании, и еще привлекает хорошая поддержка, то есть разработчики XAMPP всегда следят за тем что бы при появлении новой версии той или иной библиотеки, комплект Web-сервера обновлялся. XAMPP не создает никаких дополнительных дисков, и содержит очень широкий выбор библиотек, которые можно добавить.
Кстати аббревиатура XAMPP означает — X(любая из ОС: Linux, Windows, Mac OS, Solaris), Apache, MySQL, PHP, Perl. Мы будем рассматривать для ОС Windows, для которой существует две версии XAMPP Windows и XAMPP Lite. Они отличаются лишь содержанием пакетов, в версии Lite меньше разных библиотек.

XAMPP Windows 1.7.3 [Basic package]

Данная версия содержи следующие библиотеки:

Системные требования:

Как я уже говорил версия Lite отличается отсутствием некоторых библиотек, и соответственно занимает меньше места на диске, и сам установочный файл меньше весит. По завяливанием разработчиков версия Lite не так часто обновляется как полная версия.

XAMPP Lite 1.7.3 [Basic package]

Системные требования:

Напомню если говорил, и скажу если еще не сказал что XAMPP является полностью бесплатным, и распространяется под лицензией GNU GPL. Как видно из списка библиотек обоих версий Вам для начала работы с PHP подошла бы и Lite версия, но нужно думать о будущем и том что в дальнейшем Вам может понадобиться больше библиотек, поэтому будем рассматривать версию XAMPP Windows 1.7.3 [Basic package].

Установка

Для того чтобы начать процесс установки нужно скачать установочный файл или архив, в данном случае будем использовать установочный файл который находится по следующему адресу — http://www.apachefriends.org/download.php?xampp-win32-1.7.3.exe.
Я надеюсь Вы уже загрузили установочный файл, потому что в самом процессе установки нет ничего сложного все довольно просто, Вам нужно нажать только на кнопку Install. Перед установкой можно изменить путь установки, я оставил по умолчанию C:\, при этом сам XAMPP у Вас установится в директорию — C:\xampp.

XAMPP - готовый комплект Web-сервера

Фактически это само распаковывающийся архив, поэтому просто ждем пока будет идти процесс распаковки(установки).

XAMPP - готовый комплект Web-сервера

После этого файл setup_xampp.bat запустится автоматически, и у Вас должна открыться командная строка, где продолжается установка XAMPP. Здесь у Вас спрашивают про то создать ли ярлык на рабочем столе, выберите «y» если согласны и «n» если несогласны и потом нажимаем Enter.

XAMPP - готовый комплект Web-сервера

Теперь у нас спрашивают правильно ли указан путь к XAMPP, нажимаем «y» если согласны с тем что бы XAMPP находился в директории C:\xampp, если не согласны то жмем «x» и начинаем все с начала. Нажимаем «y» а затем клавишу Enter.

XAMPP - готовый комплект Web-сервера

В следующем окне можно выбрать как тип установки — портативную версию XAMPP (чтобы можно было переносить на флеш-накопителе), для этого нужно выбрать «y», в данном случаем нажимаем «n» и за тем Enter, так как мы устанавливаем на жесткий диск.

XAMPP - готовый комплект Web-сервера

В следующем окне будет выведен список того что установилось, в том числе и то что нам нужно, а именно PHP, MySQL, Apache. Здесь просят нажать Enter для продолжения, что собственно и делаем.

XAMPP - готовый комплект Web-сервера

На следующем шаге нам выведется сообщение о том что автоматически был определен часовой пояс и поставлен в файлы «php.ini» и «my.ini», в моем случае — Europe/Helsinki. Здесь нажимаем Enter.

XAMPP - готовый комплект Web-сервера

Наш комплект Web-сервера XAMPP установлен. На этом этапе в командной строке отображается несколько действий на выбор, а именно:

  1. запустить XAMPP Control Panel
  2. переместить XAMPP (текущий путь: C:\xampp)
  3. отключить HTTPS (SSL)
  4. отключить Server Side Includes (SSI)
  5. включить только IPv4 (текущий: IPv4/6(автоматически))
  6. отключить mod_perl
  7. отключить Apache:ASP

Здесь Вы конечно можете выбрать какой то пункт меню на свое усмотрение. Для того что бы запустить XAMPP Control Panel нужно выбрать пункт №1 и нажать на Enter, или выбрать x (как сделал я) для выхода и потом запустить ярлык на рабочем столе — XAMPP Control Panel. В том случае если вы установили без создания ярлыков, то нужно зайти в директорию C:\xampp и запустить xampp-control.exe. В этой же директории располагаются ярлыки для запуска отдельных модулей.

XAMPP - готовый комплект Web-сервера

После запуска XAMPP Control Panel тем или иным способом Вы должны увидеть следующее:

XAMPP - готовый комплект Web-сервера

Использование

XAMPP очень прост в использовании, и хорошо интегрируется NetBeans (об этой IDE я писал раньше — NetBeans как IDE для PHP). В XAMPP очень удобная Control Panel,она проста в использовании и содержит все необходимое для комфортной работы и создании шедевров в программировании.

На скриншоте выше видно Список модулей (Modules)а именно: Apache, MySQL, FileZilla, Mercury, Tomcat. Для того чтобы запустить тот или иной модуль нужно на кнопку, которая находится рядом с модулем, а именно Start. В нашем случае запустим Apache и MySQL. Если Вы хотите запускать модули как службы Windows и что бы они автоматически выполнялись после загрузки ОС, нужно поставить рядом с названием модуля флажок Svc. Модули устанавливаются в качестве служб Windows при установке флажка и удаляются при снятии флажка Svc.

XAMPP - готовый комплект Web-сервера

С права вынесены все кнопки полезных функций, а именно:
Shell — запускает командную строку, в которой можно работать с сервером

XAMPP - готовый комплект Web-сервера

Setup — здесь находятся некоторые настройки XAMPP, которые собраны в небольшое меню, о них я писал выше

XAMPP - готовый комплект Web-сервера

Port-Check — при нажатии на эту кнопку можно проверить нужные для Web-сервера порты

XAMPP - готовый комплект Web-сервера

Explore — после нажатия на данную кнопку будет открыта директория в которую установлен XAMPP (C:\xampp)
SCM — здесь будет открыто окно для управления службами Windows
Refresh — при нажатии на эту кнопку состояние всех модулей будет обновлено, обратите внимание что они будут обновлены а не перезагружены
Help — здесь находится небольшая справка по работе с XAMPP Control Panel
Exit — выход из XAMPP Control Panel, обратите внимание что при этом закроется просто Control Panel все модули которые были включены останутся в рабочем состоянии
Если просто закрыть окно XAMPP Control Panel то остается иконка в трее, при наведении на которую отображается информация о работающих модулях. При нажатии на иконку в трее правой кнопкой мыши, произойдет Refresh XAMPP.
При запуске нужных Вам модулей, станут активными кнопки с надписью Admin. При нажатии на любую из них запускается установленный по умолчанию браузер и в нем административная панель того или иного модуля. Вот к примеру так выглядит приветственная страница XAMPP, после нажатия на кнопку Admin возле Apache. Здесь нужно выбрать тот язык который Вам больше нравится, в более старых версия доступен также русский, в данном случае выбираем English.

XAMPP - готовый комплект Web-сервера

После выбора языка появится веб-интерфейс XAMPP. В котором на первой странице нас приветствуют, и поздравляют с установкой комплекта Web-сервера.

XAMPP - готовый комплект Web-сервера

В веб-интерфейсе очень много всего полезного, там есть достаточно большое меню в котором:
Welcome — приветственная страница
Status — здесь можно проверить статус всех компонентов, какие из компонентов работают а какие не работают

XAMPP - готовый комплект Web-сервера

Security — здесь находятся всевозможные настройки безопасности, зеленым цветом отмечены надежные настройки, красным цветом полностью незащищенные, а желтый цвет означает что нет возможности определить статус, здесь можно найти список портов XAMPP, и рекомендации по устранению незащищенных компонент, здесь также указан адрес (http://localhost/security/xamppsecurity.php), по которому можно изменить пароль для root (MySQL), поставить пароль на директорию XAMPP, и установить способ доступа к phpMyAdmin

XAMPP - готовый комплект Web-сервера

Documentation — здесь находится On-line документация по разным компонентам XAMPP

XAMPP - готовый комплект Web-сервера

Components — здесь находится список всех компонентов, которые содержит XAMPP, и ссылки на авторов этих компонентов

XAMPP - готовый комплект Web-сервера

phpinfo() — выводит информацию о PHP, а именно о настройках, расширениях, о версии PHP и т.д.

XAMPP - готовый комплект Web-сервера

pearinfo() — выводит информацию о PEAR

XAMPP - готовый комплект Web-сервера

perlinfo() - выводит информацию о PERL

XAMPP - готовый комплект Web-сервера

aspinfo() - выводит информацию о ASP

XAMPP - готовый комплект Web-сервера

Demos — в этом разделе есть несколько скриптов, которые демонстрируют работу тех или иных компонентов XAMPP, а именно:
CD Collection — простая программа с использованием PHP, MySQL, FPDF, в которой можно добавлять, удалять и генерировать список ваших CD в PDF

XAMPP - готовый комплект Web-сервера

Biorhythm — программа показывающая биоритм графически, с использованием PHP, GD

XAMPP - готовый комплект Web-сервера

Instant Art — программа демонстрирующая работу PHP, GD, FreeType

XAMPP - готовый комплект Web-сервера

Flash Art — демонстрация применения PHP+MING

XAMPP - готовый комплект Web-сервера

Phone Book — телефонная книга с использованием PHP и SQLite

XAMPP - готовый комплект Web-сервера

ADOdb — использование ADOdb

XAMPP - готовый комплект Web-сервера

Guest Book — простая гостевая книга на Perl

XAMPP - готовый комплект Web-сервера

Tools — в этом разделе находятся дополнительные утилиты, которые существенно могут помочь в разработке того или иного программного продукта
phpMyAdmin — приложение на PHP, которое предоставляет веб-интерфейс для работы с MySQL, это приложение можно вызвать из XAMPP Control Panel путем нажатия кнопки Admin рядом с модулем MySQL, что собственно очень удобно и ускоряет запуск phpMyAdmin

XAMPP - готовый комплект Web-сервера

Webalizer — статистика о работе сайта с графиками

XAMPP - готовый комплект Web-сервера

Mercury Mail — программа, которая позволяет отправлять и получать почту как на одном компьютере, так и в локальной сети.

XAMPP - готовый комплект Web-сервера

FileZilla FTP — FTP сервер

XAMPP - готовый комплект Web-сервера

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

Перевод документации XAMPP

Пароли:

Про безопасность (обязательно к прочтению!)
XAMPP сделан так что он полностью открыт, это было сделано для того чтобы разработчики могли делать все что им нужно, и по этому не рекомендуется использовать XAMPP, такой какой он сразу после установки, в производстве, так как он практически не защищен.

Список наиболее уязвимых мест XAMPP:
Логин администратора MySQL (root) по умолчанию не имеет пароля.
Демон MySQL, доступен через локальную сеть.
PhpMyAdmin, доступен через локальную сеть.
Примеры доступны через локальную сеть.

Эти и другие недостатки безопасности можно исправить на следующей странице:

http://localhost/security/

Пароли для MySQL и PhpMyAdmin, и пароли к директории XAMPP тоже можно настроить по вышеуказанному адресу.

Примечания MySQL:
Как и говорилось выше по умолчанию в MySQL для пользователя с логином «root» пароля не существует. Чтобы можно было получить доступ из PHP к базам данных MySQL нужно написать следующее:

mysql_connect("localhost", "root", "");

Чтобы установить пароль для доступа к MySQL, нужно использовать MySQL Admin.
Для того что бы установить пароль «secret» для пользователя «root» в командной строке нужно написать следующее:

\xampp\mysql\bin\mysqladmin.exe -u root -psecret

Если Вы измените пароль то придется перенастраивать PhpMyAdmin что бы использовать новый пароль, если же вы не перенастроите то доступ к базам данных будет закрыт. Чтобы изменить настройки PhpMyAdmin нужно открыть файл config.inc.php, который располагается в директории \xampp\phpmyadmin\ и изменить следующие строки:

$cfg['Servers'][$i]['user'] = 'root';   // Пользователь MySQL
$cfg['Servers'][$i]['auth_type'] = 'cookie';   // Аутентификация HTTP

После этого чтобы получить доступ к PhpMyAdmin, сначала у вас будет запрашиваться пароль к пользователю ‘root’.

CPAN / PEAR:

Предварительно установленные в ОС CPAN и PEAR , являются базовыми. Если Вам нужны дополнительные пакеты, нужно воспользоваться утилитой XAMPP Shell (xampp_shell.bat), для чего в командной строке нужно прописать следующее и установите их с помощью утилит командной строки:

Если у Вас нет компилятора VC6, Вы можете использовать «ppm» вместо «cpanp», чтобы установить бинарные пакеты.

Общие директории

\xampp\anonymous Для анонимного доступа к FTP нужно загрузить в эту директорию.
\xampp\cgi-bin Для CGI скриптов.
\xampp\htdocs Это и есть та основная директория, где нужно создавать свои проекты. Я к примеру делаю так: создаю в \xampp\htdocs директорию к примеру blog (C:\xampp\htdocs\blog) и сюда записываю основные файлы проекта, после чего мой блог будет доступен по адресу http://localhost/blog/ и так для каждого проекта создаю отдельную директорию.
\xampp\MercuryMail\MAIL Почтовые ящики.
\xampp\mysql\data Базы данных MySQL.
\xampp\webdav Директория для доступа WebDAV (если это включено).

Конфигурационные файлы

\xampp\apache\conf\httpd.conf Основной конфигурационный файл для Apache.Если Вам нужны другие, файлы конфигурации Apache, то они хранятся в директории \xampp\apache\conf\extra\.
\xampp\FileZillaFTP\FileZilla Server.xml Конфигурационный файл для FTP сервера FileZilla. Он связан с «FileZilla Server Interface.exe» (который можно запустить путем нажатия кнопки «Admin» в XAMPP Control Panel).
\xampp\MercuryMail\mercury.ini Конфигурационный файл для сервера SMTP Mercury. Он связан с «mercury.exe» (который можно запустить путем нажатия кнопки «Admin» в XAMPP Control Panel).
\mysql\bin\my.ini Конфигурационный файл для сервера MySQL.
\xampp\php\php.ini Конфигурационный файл для PHP.
\xampp\phpMyAdmin\config.inc.php Конфигурационный файл для phpMyAdmin.
\xampp\sendmail\sendmail.ini Конфигурационный файл для msmtp (совместимый интерфейс sendmail).
\xampp\webalizer\webalizer.conf Конфигурационный файл для Webalizer.

Лог-файлы (.log)

\xampp\apache\logs\error.log Файл журнала ошибок Apache. Дополнительные файлы могут быть в этой же директории (если это включено).
\xampp\FileZillaFTP\Logs Файл журнала ошибок FileZilla FTP-сервера (если это включено).
\xampp\MercuryMail\LOGS\ В поддиректориях этой директории находятся лог-файлы из нескольких модулей Mercury SMTP-сервера.
\xampp\mysql\data\mysql.err Файл журнала ошибок MySQL. Дополнительные файлы могут быть в этой же директории (если это включено).
\xampp\sendmail\sendmail.log Лог-файлы msmtp (совместимый интерфейс sendmail).

После установки XAMPP, можно спокойно установить WordPress или же установить и русифицировать Drupal, для того что бы начать сразу создавать сайты.
Существует также достаточно неплохой движок для форума, который можно установить и протестировать, и о том как установить Vanilla forums на XAMPP, подробно написано по указанной ссылке.

Ссылки:

Удачного Вам использования XAMPP.



Теги: , , , ,
13 сентября 2010, 14:38 | Комментарии (20)

  • Jagergo

    Долго искал руководство ХАМРР
    Только у Вас расписано понятно и подробно.
    Спасибо

  • http://uamedwed.com uamedwed

    Jagergo всегда пожалуйста!

  • mir

    \xampp\phpMyAdmin\config.inc.php
    не так
    http://localhost/phpmyadmin/
    вот так ::))

  • http://uamedwed.com uamedwed

    mir, рядом с адресом \xampp\phpMyAdmin\config.inc.php, в другой колонке написано что это «Конфигурационный файл для phpMyAdmin» а не путь запуска phpMyAdmin. А как запустить phpMyAdmin я указал выше, можно путем нажатия на кнопку «Admin» в «XAMPP Control Panel» рядом с MySQL, или же нажать на кнопку «Admin» возле «Apache» и там в главном меню выбрать в разделе «Tools» — «phpMyAdmin». Конечно как альтернативу можно использовать адрес указанный Вами — http://localhost/phpmyadmin/, который собственно и запустится в браузере после выше указанных действий. Но мне кажется гораздо быстрее и удобнее запускать phpMyAdmin из XAMPP Control Panel.

  • Zlo))

    Здравствуйте! Большое спасибо за такое подробное описание. Скажите пожалуйста, а если перенести папку xampp (с локального диска, куда устанавливался лок.сервер) на флешку, а потом работать уже с этой флешки, это сработает или ничего не получится?

  • http://uamedwed.com uamedwed

    Zlo)), всегда пожалуйста. С самого начала при установке XAMPP, можно выбрать куда установить на компьютер или на флешку, после чего можно будет выбрать тип установки portable(так называемая портативная или переносная версия XAMPP), выше написано как это можно сделать. Но если устанавливать с самого начала не portable версию, то правильную работу XAMPP нельзя гарантировать после переноса его на флешку. После того как Вы установите portable версию можно будет перенести все нужны файлы(сайты,бд) из прошлой установки.

  • mor

    подскажите плз почемуто не выполняются сложные сценарии РНР , например:

    пишет:
    Уважаемый ! Вы зарегистрированы
    Warning: fclose(): supplied argument is not a valid stream resource in C:\xampp\htdocs\mysite\reg.php on line 16
    может настройки какие надо сделать?

  • http://uamedwed.com uamedwed

    mor, для начала посмотрите что у вас находится в файле reg.php в строке 16, собственно из за этого и показывает ошибку. Было бы хорошо если бы Вы прислали код из файла, тогда уже и будет видна причина ошибки. Если Вы не меняли ни каких настроек в XAMPP, то должно работать практически все, так как после установки XAMPP все настройки достаточно открыты, что позволяет тестировать любые приложения.

  • mor

    вот код:
    Регистрация пользователя
    не могу отправить код через коментарий почемуто не обрабатывается
    подскажите пожалуйста еще никиак не могу понять как скрипт РНР вытаскивает $login из формы другого файла

  • http://uamedwed.com uamedwed

    mor, на странице Контакты есть адрес E-mail, отправьте код по этому адресу.
    По поводу $login здесь опять же нужно смотреть код.

  • http://uamedwed.com uamedwed

    mor, отправил Вам письмо с ответом. Все таки проблема была не в XAMPP и его настройках а именно в коде.

  • Саша

    Скажите пожалуйста, можно ли использовать XAMPP как внешний сервер, доступный из интернета, и если да, то как его настроить ?

  • http://uamedwed.com uamedwed

    Саша, можно настроить XAMPP как внешний сервер, но делать это крайне не желательно, так он практически не защищен. Лучше отдельно установить apache+php+mysql и настроить сервер.

  • саша л

    здраствуйте, напишите мне пожалуста,а как изменить программу xampp-apache чтобы создавать сайты без набора тестовой страницы 127.0.0.1 наподобие сайта: http://mysite/index.php ,пожалуйста напишите мне на мою почту.

  • Dreamer

    Как установить на Windows, чтоб паралельно работали две версии XAMPP? И можно было быстро и легко между ними переключатсья?

  • http://uamedwed.com uamedwed

    Dreamer, попробуйте при установке XAMPP выбрать другой путь, что бы установить разные версии в разные директории.

  • Anna

    добрый день!) вопрос такой- мне по работ необходимо работать с программой lime survey — прочитала в руководстве к этому приложению, что при желании работать на собственном компьютере, я могу установить XAMPP, на котором моя программа работает без смены конфигурации. но я немного далека от того, как именно запустить мою программу теперь на этом локадбном сервере? Помогите:)

  • http://uamedwed.com uamedwed

    Anna, к сожалению этим приложением пользоваться не приходилось. На сколько я понял, для его работы как минимум нужны PHP и MySQL, что собственно и может вам предоставить XAMPP. На официальном сайте приложения lime survey должна быть информация о его установке. Сначала Вам нужно установить XAMPP и запустить его, после чего Вам нужно установить нужное Вам приложение.

  • Anna

    спасибо в любом случае:) сервер установила…теперь ищу пути к решению))

  • http://uamedwed.com uamedwed

    Anna, не за что.