XAMPP для Windows существует в трёх рахных пакетах:
Установщик:
Вероятно самый простой способ установить XAMPP.
ZIP:
Для пуристов: XAMPP как обычный ZIP архив.
7zip:
Для пуристов с небольшой скоростью интернета: XAMPP как 7zip архив.
Заметка: Если вы распакуете файлы, возможно ложное срабатывание антивирусной программы.
Использование установщика:
Используйте контрольную панель XAMPP (XAMPP Control Panel) чтобы запускать/останавливать Apache, MySQL, FileZilla и Mercury, или установите эти сервера как сервисы.
Установка из ZIP архива
Распакуйте zip архивы в выбранную вами папку. XAMPP распакуется в суб-каталог "C:\xampp" под выбранной папкой. Теперь запустите файл "setup_xampp.bat", чтобы настроить конфигурацию XAMPP для вашей системы.
Если вы выберите корневой каталог "C:\" как папку назначения, вы не должны запускать "setup_xampp.bat".
Также как в версии с установщиком, теперь вы можете использовать контрольную панель XAMPP (XAMPP Control Panel) для дополнительных задач.
Если вы распакуете XAMPP в папку верхнего уровня как "C:\" или "D:\", вы можете запустить большинство серверов как Apache или MySQL сразу без исполнения файла "setup_xampp.bat".
Если вы устанавливаете XAMPP на usb носитель желательно не использовать скрипт установки, или выбрать в скрипте установки относительные пути. Так как на каждом ПК такой носитель может иметь разные буквы привода. Вы можете перейти с абсолютных на относительные пути в любой момент с помощью скрипта установки.
Использование установщика с нашей страницы скачиваний это самый простой способ установить XAMPP. После завершения установки, вы найдёте XAMPP под Пуск | Все программы | XAMPP. Вы можете использовать панель управления XAMPP для запуска или остановки всех серверов и установки или удаления серфисов.
Используйте контрольную панель XAMPP (XAMPP Control Panel) чтобы запускать/останавливать Apache, MySQL, FileZilla и Mercury, или установите эти сервера как сервисы.
Универсальный центр управления это "XAMPP Control Panel" (панель управления XAMPP) (благодаря www.nat32.com). Он запускается с помощью:
\xampp\xampp-control.exe
Также вы можете использовать некоторые batch (*.bat) файлы чтобы запускать/останавливать сервера.
\xampp\xampp_start.exe
\xampp\xampp_stop.exe
\xampp\apache_start.bat
\xampp\apache_stop.bat
\xampp\mysql_start.bat
\xampp\mysql_stop.bat
\xampp\mercury_start.bat
\xampp\mercury_stop.bat
\xampp\filezilla_start.bat
\xampp\filezilla_stop.bat
Введите следующую URL в ваш любимый браузер:
http://localhost/
или http://127.0.0.1/
Теперь вы должны видить стартовую страницу XAMPP содержащую некоторые ссылки для проверки состояния установленного ПО и небольшие примеры програмирования.
Каждый сервер в XAMPP можно установить как сервис Windows. Вы можете сделать это при помощи XAMPP Control Panel (панель управления XAMPP). В таком случае скрипты или контрольная панель обязательно должны быть запущены с привилегиями администратора.
Установка сервиса Apache: \xampp\apache\apache_installservice.bat
Удаление сервиса Apache: \xampp\apache\apache_uninstallservice.bat
Установка сервиса MySQL: \xampp\mysql\mysql_installservice.bat
Удаление сервиса MySQL: \xampp\mysql\mysql_uninstallservice.bat
Установка или удаление сервиса FileZilla: \xampp\filezilla_setup.bat
Для Mercury нет доступной установки сервиса
XAMPP не предназначен для производственного использования, а только для сред разработки. XAMPP настроен таким образом чтобы быть как можно более открытым и позволять разработчику всё что он/она захочет. Для сред разработки это прекрасно, но в производственной среде это может быть пагубно.
Вот список отсутствующих мер безопасности в XAMPP:
Всё это может быть обширным риском безопасности. Особенно если XAMPP доступен через сеть и людям снаружи LAN. Использование брандмауэра (межсетевой экран) или (NAT) маршрутизатора может помочь. В случае с маршрутизатором или брандмауэром, ваш ПК обычно недоступен через сеть. Решение этих проблем лежит на вас. Как небольшая помощь есть консоль безопасности XAMPP (XAMPP Security console).
Пожалуйста обезопасьте XAMPP прежде чем публиковать что-либо в сети. Использование брандмауэра (межсетевой экран) или маршрутизатора достаточно лиш для низких уровней безопасности. Для немного большей безопасности, вы можете запустить консоль безопасности XAMPP (XAMPP Security console) и установить пароли.
Если вы хотите чтобы ваш XAMPP был доступен через интернет, вам следует посетить следующую URI которая может исправить некоторые проблемы:
http://localhost/security/
С помощью консоли безопасности вы можете установить пароль для MySQL пользователя "root" и phpMyAdmin. Вы также можете включить аутентификацию для демонстративных страниц XAMPP.
Этот инструмент на веб-основе не исправляет какие-либо дополнительные проблемы безопасности! Особенно в случае с FileZilla FTP сервером и Mercury почтовым сервером, их вы должы обезопасить сами.
Если вы установили XAMPP используя версию с установщиком, пожалуйста используйте деинсталлятор. Деинсталлятор удалит все записи XAMPP из реестра и удалит некоторые установленные сервисы включенные в XAMPP. Мы настойчиво рекомендуем чтобы вы использовали деинсталлятор для удаления установки XAMPP с версией установщика. Пожалуйста сделайте резервное копирование всех данных которые хотите сохранить прежде чем удалять XAMPP.
Если вы установили XAMPP используя ZIP или 7zip версии, выключите все XAMPP сервера и выйдите из всех панелей. Если вы установили какие-либо сервисы, удалите и отключите их тоже. Теперь просто удалите весь каталог где установлен XAMPP. В данном случае записей в регистре и переменных среды требующих чистку нет.
XAMPP Lite (значит "лёгкий" как в "лёгкий вес") это меньший набор XAMPP компонентов, что рекомендуется для быстрой работы где требуется только PHP и MySQL. Некоторые сервера или инструменты как Mercury Mail и FileZilla FTP отсутствуют в Lite версии.
Главный каталог для всех WWW документов это \xampp\htdocs. Если вы положите файл "test.html" в этот каталог, вы сможете получить доступ к нему по URI "http://localhost/test.html".
И "test.php"? Просто используйте "http://localhost/test.php". Простой тест-скритп может быть:
<?php
echo 'Hello world';
?>
Новая суб-каталог для вашего веб проекта? Просто создайте новый каталог (пример: "new") внутри каталога "\xampp\htdocs" (желательно без пробелов и с использованием только ASCII), создайте файл "test.php" в этом каталоге, вы сможете получить доступ к нему по URI "http://localhost/new/test.php".
Дополнительные особенности
HTML:
Исполняемый файл: \xampp\htdocs
Разрешённые окончания: .html .htm
=> базовый пакет
SSI:
Исполняемый файл: \xampp\htdocs
Разрешённые окончания: .shtml
=> базовый пакет
CGI:
Исполняемый файл: \xampp\htdocs and \xampp\cgi-bin
Разрешённые окончания: .cgi
=> базовый пакет
PHP:
Исполняемый файл: \xampp\htdocs and \xampp\cgi-bin
Разрешённые окончания: .php
=> базовый пакет
Perl:
Исполняемый файл: \xampp\htdocs and \xampp\cgi-bin
Разрешённые окончания: .pl
=> базовый пакет
Apache::ASP Perl:
Исполняемый файл: \xampp\htdocs
Разрешённые окончания: .asp
=> базовый пакет
JSP Java:
Исполняемый файл: \xampp\tomcat\webapps\java (e.g.)
Разрешённые окончания: .jsp
=> Tomcat add-on
Servlets Java:
Исполняемый файл: \xampp\tomcat\webapps\java (e.g.)
Разрешённые окончания: .html (u.a)
=> Tomcat add-on
Да. После перемещения каталога XAMPP, вы должны выполнить "setup_xampp.bat". Пути в файлах конфигурации будут поправлены при выполнении этого шага.
Если вы установили любой сервер как Windows сервис, сначала вы должны удалить Windows сервис, а после перемещения вы можете снова установить сервис.
Предупреждение: Файлы конфигурации из ваших скриптов, к примеру PHP приложения, не настроены. Но возможно написать плагин для установщика. С таким плагином установщик может настроить и эти файлы.
Стандартное имя файла для функции Apache "DirectoryIndex" это "index.html" или "index.php". Каждый раз когда вы открываете в браузере папку (пример: "http://localhost/xampp/"), и Apache сможет найти такой файл, Apache отобразит этот файл вместо списка содержимого каталога.
Почти все настройки в XAMPP вы можете поменять при помощи файлов конфигурации. Просто откройте файл в текстовом редакторе и измените что желаете. Только FileZilla и Mercury должны быть настроены при помощи програмного инструмента конфигурации.
Microsoft предоставляет более хороший брандмауэр (межсетевой экран) с сервис паком 2 (SP2), который запускается автоматически. Этот брандмауэр теперь блокирует необходимые порты 80 (http) и 443 (https) и Apache не может запустится.
Быстрое решение:
Отключите брандмауэр (межсетевой экран) и попробуйте запустить XAMPP ещё раз. Лучшее решение: указать исключение в центре безопасности.
Следующие порты используются для базовой функциональности:
Apache (HTTP): Port 80
Apache (WebDAV): Port 81
Apache (HTTPS): Port 443
MySQL: Port 3306
FileZilla (FTP): Port 21
FileZilla (Admin): Port 14147
Mercury (SMTP): Port 25
Mercury (POP3): Port 110
Mercury (IMAP): Port 143
Mercury (HTTP): Port 2224
Mercury (Finger): Port 79
Mercury (PH): Port 105
Mercury (PopPass): Port 106
Tomcat (AJP/1.3): Port 8009
Tomcat (HTTP): Port 8080
Контроль учётных записей пользователей (UAC)
Вы не имеете полных привилегий записи в каталоге "C:\program files", даже как администратор. Или у вас только ограниченные привилегии (к примеру только для ".\xampp\htdocs"). В таком случае вы не можете редактировать файл. Решение: Повысьте свои привилегии в проводнике (правый клик / безопасность) или отключите Контроль учётных записей пользователей (UAC).
Вы установили Apache/MySQL в "C:\xampp" как Windows сервис. Но вы не можете запускать/останавливать сервисы при помощи панели управления XAMPP (XAMPP Control Panel) или не можете их удалить. Решение: Используйте консоль управления сервисами от Windows или отключите UAC.
Отключение контроля учётных записей пользователей (UAC)
Чтобы отключить UAC, используйте программу "msconfig". В "msconfig" заидите в "Tools" (инструменты), выберите "disable user account control" (отключить контроль учётных записей пользователей) и подтвердите свой выбор. Теперь вы должны перезапустить Windows. Вы можете включить UAC снова.
Чтобы сравнить файлы, часто используются контрольные суммы. Стандарт чтобы создать такую контрольную сумму md5 (Message Digest Algorithm 5).
При помощи контрольной суммы md5 вы можете проверить, соответствует ли оригиналу скачанный вами пакет XAMPP. Естественно вам потребуется программа способная создавать такие контрольные суммы. Для Windows вы можете использовать инструмент от Microsoft:
Доступность и описание утилиты проверки целостности контрольных сумм файлов
Также возможно использовать любую другую программу способную создавать md5 контрольные суммы, как GNU md5sum.
Когда вы установили такую программу (пример: fciv.exe), вы можете выполнить следующие шаги:
fciv.exe xampp-win32-1.8.2-0.exe
Если обе контрольные суммы равны, всё хорошо. Если нет, скачивание обернулось провалом или файл был изменён.
Если изменеие в "php.ini" не вступило в действие, возможно PHP использует другой файл. Вы можете проверить это при помощи phpinfo(). Последуйте по URI http://localhost/xampp/phpinfo.php и ищите "Loaded Configuration File" (загруженный файл конфигурации). Это значение покажет какой "php.ini" PHP действительно использует.
Примечание: После изменения "php.ini" вы должны перезапустить Apache чтобы Apache/PHP смогли считать новые настройки.
Некоторые анти-вирусные программы по ошибке принимают XAMPP за вирус, обычно отмечая файл xampp-manager.exe. Это ложная тревога, что означает анти-вирус ошибочно принял за вирус то что им не является. Прежле чем мы публикуем каждую новую версию XAMPP мы сканируем его на вирусы. В данный момент мы используем Kapersky Online Virus Scanner
Мы включили все зависимости и сервера тревуемые для работы пакета веб приложения, поэтому XAMPP устанавливает большое количество файлов. Если вы устанавливаете XAMPP на Windows машине со включенным анти-вирусом, это может значительно замедлить установку, и ещё есть шанс что один из серверов (веб сервер, сервер баз данных) может быть заблокирован анти-вирусным ПО. Если ваш есть анти-вирус включён, проверьте следующие настройки для запуска XAMPP без проблем с производительностью:
Это проблема может иметь место по одной из нескольких причин:
(OS 10048)... make_sock: could not bind to adress 0.0.0.0:80
no listening sockets available, shutting down
(OS 10038)Socket operation on non-socket: make_sock: for address 0.0.0.0:80,
apr_socket_opt_set: (SO_KEEPALIVE)
Также если Apache может запустится, но ваш браузер не может соединится с ним это может быть по одной из следующих причин:
Совет: If you have problems with used ports, you can try the tool "xampp-portcheck.exe". Maybe it can help.
В данном случае действует один из двух сценариев. Либо ваш процессор работает на пределе своих возможностей, или вы можете подсоеденится к серверу через браузер, но ничего не видите (система безуспешно пытается загрузить страницу). В любом случае вы можете найти следующее сообщение в лог файле Apache:
Child: Encountered too many AcceptEx faults accepting client connections.
winnt_mpm: falling back to 'AcceptFilter none'.
MPM возвращается к более безопасному выполнению, но некоторые клиентские запросы не обрабатывались корректно. Для того чтобы избежать этой ошибки, используйте "AcceptFilter" с включенным фильтром "none" в файле "\xampp\apache\conf\extra\httpd-mpm.conf".
Иногда возникают проблемы с отображением картинок и таблиц стилей. Особенно, если эти файлы находятся на сетевом диске. В этом случае вы можете включить (или добавить) одну из следующих строк в файле "\xampp\apache\conf\httpd.conf":
EnableSendfile off
EnableMMAP off
Эта проблема также может быть вызвана программами регулирования полосы пропускания, например, NetLimiter.
Самый простой способ состоит в использовании консоли безопасности, к которой можно получить доступ по http://localhost/security/ Эта консоль создает пароль для корневого пользователя MySQL и корректирует настройки PHPMyAdmin.
Другой подход заключается в настройке его с помощью "XAMPP Shell" (командная строка). Откройте оболочку и выполните следующую команду:mysqladmin.exe -u root password secret
Да. Просто не запускайте MySQL из пакета XAMPP. Обратите внимание, что два сервера не могут быть запущены на том же порту. Если вы установили пароль для "root", пожалуйста, не забудьте отредактировать файл "\xampp\phpMyAdmin\config.inc.php".
В базовой конфигурации XAMPP, к PHPMyAdmin есть публичный доступ.
Вы можете изменить пароль администратора MySQL и выбрать метод проверки подлинности для PHPMyAdmin с консоли безопасности в http://localhost/security/
Прежде чем вы сможете получить доступ к серверу MySQL, PhpMyAdmin запросит у вас имя пользователя и пароль. Не забудьте установить пароль для "root" пользователя в первую очередь.
По умолчанию, поддержка IMAP для PHP отключена в XAMPP из-за некоторых загадочных ошибок инициализации в некоторых домашних версиях, например, Windows 98. Если вы работаете с системами NT, вы можете открыть файл "\xampp\php\php.ini", чтобы активировать php расширение, удалив точку с запятой в строке ";extension=php_imap.dll". Она должна быть:
extension=php_imap.dll
Теперь перезагрузите Apache, и IMAP должен работать. Вы можете использовать те же самые шаги для любого расширения, которое не включено в конфигурации по умолчанию.
Много PHP приложений или расширений, которые были написаны для Linux не были портированы на Windows.
Лучше этого не делать. Эти скрипты ещё нужны для всех дополнительных пакетов (дополнений) и обновлений XAMPP.
Как и другие (Zend) разрешения, вы можете активировать его в "php.ini". В этом файле, измените строку ";zend_extension = "\xampp\php\ext\php_eaccelerator.dll"". Она должна быть:
zend_extension = "\xampp\php\ext\php_eaccelerator.dll"
Если mssql расширение было загружено в php.ini, иногда возникают проблемы когда используется только TCP/IP. Вы можете исправить эту проблему при помощи более новой "ntwdblib.dll" от Microsoft. Пожалуйста замените старый файл в "\xampp\apache\bin" и "\xampp\php" более новым. Из за условий лицензии, мы не можем включить более новую версию файла в XAMPP.
Для этого, мы открыли предмет обсуждения на форуме с примерами и возможными решениями: MCrypt топик
Нет. И Apache::ASP с Perl дополнением не то же самое. Apache::ASP распознаёт только Perl-Script, а ASP из Internet Information Server (IIS) также распознаёт обычный VBScript. Но для ASP .NET, существует сторонний Apache модуль.