- XAMPP — что это такое? Подробное объяснение.
- Чтобы узнать, что такое XAMPP, нужно сначала понять, как работают сервера с сайтами
- Что же это такое — XAMPP? Отвечаем!
- MariaDB вместо MySQL
- Что еще включает в себя XAMPP?
- XAMPP локальный сервер: установка, настройка, использование
- Вводная часть
- Системные требования для установки XAMPP
- Что входит в сборку XAMPP
- XAMPP локальный сервер и Bitnami
- Где скачать XAMPP
- Установка XAMPP на Windows 7 по шагам
- Запуск XAMPP
- XMAPP, занят порт 80: как освободить порт 80
- Пример освобождения порта 80 Windows
- Панель XAMPP
- Настройки XAMPP
- Как запустить XAMPP
- Проверка работы XAMPP
- Вывод
- Видео статьи: О Bitnami
XAMPP — что это такое? Подробное объяснение.
XAMPP — что это такое? Чтобы разобраться, сначала придется немного узнать о том, как работают сервера. Если вы начинающий разработчик и еще не знаете как работают сайты, я коротко расскажу вам. Важно отметить, что мы будем говорить про сайты, работающие на PHP. В конце статьи будет понятно, что такое XAMPP и зачем он нужен.
Чтобы узнать, что такое XAMPP, нужно сначала понять, как работают сервера с сайтами
Первое, что нужно иметь ввиду: все сайты работаю на серверах с Linux. За 15 лет разработки я ни разу не встретил сервер, работающий на Windows. Обусловленно это тем, что Linux надежнее, быстрее, а главное — бесплатный. Сам сервер может быть как физически отдельным компьютером, так и виртуальной машиной, эмулирующий компьютер, это нам сейчас не важно. Представьте, что вы купили новый компьютер — вот ваш сервер.
На сервере обычно установлена какая-нибудь Ubuntu или CentOS, т.к. с ними проще и быстрее работать. И разработчик (то есть — вы!) может установить туда любое программное обеспечение (программы, короче).
Вы знали, что когда вы открываете сайт, запрос от браузера обрабатывает не только конкретный компьютер (сервер), но и конкретная программа? Обычно эта программа называется «веб-сервер» и работает по порту 80. Когда вы открываете сайт, то порт 80 не указывается для краткости (является стандартом). А когда вы открываете сайт, работающий через https, то для работы используется порт 443, а не 80. Но на запрос отвечает та же программа — веб-сервер.
Сервер — это компьютер, на котором работает сайт. Веб-сервер — это программа, запущенная на этом компьютере, которая срабатывает при открытии вашего сайта.
Я пишу эту статью в 2019ом году, но уверен, что и много лет позже самым популярным сервером останется nginx. Чуть раньше самым популярным веб-сервером был Apache 2. Так называется программа, котороая откроет ваш сайт. Вы можете установить nginx на сервере простой командой (если на сервере Ubuntu):
Я не предлагаю ничего устанавливать. Просто мне хочется добавить конкретики в статью, чтобы было понятнее.
Окей, мы поняли, что нам нужен веб-сервер (программа!), чтобы обрабатывать запросы пользователя.
Теперь мы хотим генерировать страницы нашего сайта с помощью языка программирования. Пусть это будет PHP.
На самом деле не важно, какой язык — веб-сервер вам всё равно понадобится, просто он может называться по-другому (не nginx и apache).
Следующим шагом надо будет установить PHP и «соединить» его с веб-сервером таким образом, чтобы веб-сервер запускал интерпретатор PHP и передавал ему запрос, который пришел от пользователя. Сейчас я не буду писать как конкретно это сделать. Просто запомним: пользователь открывает сайт, веб-сервер получает запрос и запускает PHP-интерпретатор, чтобы последний скомпоновал страницу.
Обычно сайты используют еще и базу данных. Обычно это MySQL, всё по той же причине: она быстрая, мощная и бесплатная. Опять же, в обычном случае PHP (или другой язык) обращается к базе данных, чтобы забрать оттуда какие-то данные или что-нибудь туда записать. Например, нужно отобразить комментарий пользователя — нужно обратиться к базе данных и получить этот комментарий. Или администратор сайта написал новую статью (это я и делаю сейчас) — нужно обратиться к базе данных и записать новую статью туда.
Таким образом полная схема выглядит так: пользователь открывает сайт, происходит запрос к вашему серверу-компьютеру (или виртуальному компьютеру), запрос принимает программа-веб-сервер, запускает интерпретатор PHP (или другой язык), в свою очередь PHP обращается к базе данных и забирает оттуда конкретные данные (статьи, комментарии и т.п.). Потом PHP собирает страничку, отдает ее обратно веб-серверу и веб-сервер возвращает ее пользователю. Давайте посмотрим на мега-картинку (которую я нашел в гугле):
Например, пост, который вы видите, отобразился по описанной схеме. Собственно, ВСЁ работает по описанной схеме, она универсальная и ничего другого человечество пока не придумало. Конечно, может быть разница, в зависимости от сложности сайта, но этот базис, по сути, не меняется принципиальным образом.
Что же это такое — XAMPP? Отвечаем!
Теперь мы знаем, что для работы сайта нам нужно три программы: веб-сервер (Apache 2 или nginx), PHP-интерпретатор (PHP 7) и база данных (MySQL). И XAMPP — это всего лишь набор программ. Это как бы «пакет программ», среди которых есть Apache, PHP и MySQL. И всё! Он ВСЕГО ЛИШЬ устанавливает эти программы на ваш компьютер. Точка.
Другими словами: вы можете всё установить и настроить самостоятельно. Но плюс XAMPP’а в том, что он здорово экономит время: достаточно его скачать и установить и вы сразу же можете начать разрабатывать на PHP, не тратя время на настройку всех программ по отдельности.
Я рекомендую его использовать. Особенно, если вы начинающий разработчик. Это очень удобно.
Замечу только одно: nginx очень сложно установить в Windows. Поэтому в составе XAMPP идет Apache 2. Что делает XAMPP кросс-платформенным.
Если вы разрабатываете под Linux, лучше разобраться как всё настроить самостоятельно! В Linux всё устанавливается и настраивается гораздо проще, никакого смысла в XAMPP там нет, как я считаю.
MariaDB вместо MySQL
Некоторое время назад в состав XAMPP перестала входить база данных MySQL. Вместо нее там теперь MariaDB. Эти базы практически одинаковые. Мария сделана разработчиками MySQL (по сути является чуть ли не его копией) и ее разработчики гарантируют, что она навсегда останется свободной. Так что выдыхаем и не обращаем на это внимание.
Что еще включает в себя XAMPP?
В состав XAMPP входит несколько больше того, что я описал. Давайте быстренько разберемся, что это и зачем.
На самом деле всё остальное практически никогда или вообще никогда не нужно PHP-разработчику.
- Apache 2 — веб-сервер, который может работать на разных платформах (Windows, Linux и другие)
- MariaDB — замена базе данных MySQL, являющаяся достаточной для PHP-разработки и практически копией MySQL
- PHP — интерпретатор PHP последней или предпоследней версии
- phpMyAdmin — веб-интерфейс для управления базой данных MariaDB, по сути это всего лишь веб-сайт (я предпочитаю ставить последнюю версию самостоятельно)
- OpenSSL — программа для работы с SSL
- XAMPP Control Panel — панель управления самим XAMPP (через нее можно запускать и останавливать Apache, MySQL, Tomcat и другое)
- Webalizer — позволяет анализировать логи веб-сервера Apache (для разработки не нужно, совсем)
- Mercury Mail Transport System — почтовый сервер, в теории может использоваться для работы с почтой на компьютере разработчика, но по факту обычно никому не нужен
- FileZilla FTP Server — FTP-сервер, который, опять же, может использоваться на компьютере разработчика; но зачем, если у нас есть прямой доступ к файловой системе?
- Tomcat — эта штука нужна для Java-разработчиков, и если вы только что не знали, что такое XAMPP, то не забивайте себе голову, это не для PHP-разработки
- Strawberry Perl — это реализация Perl для Windows; совершенно непонятно, кому это нужно; во-первых, Perl давно устарел и всё чаще используется Python; во-вторых — в Windows особо нечего администрировать этим языком
Надеюсь, теперь вы знаете, что это такое — XAMPP. Закончу просто: XAMPP — это всего лишь набор программ для разработчика, каждую из которых можно установить вручную и без него (что дает больше возможностей для настройки, между прочим!). Удачи!
XAMPP локальный сервер: установка, настройка, использование
Вводная часть
XAMPP одна из популярных сборок готового локального сервера. Популярность сервера обусловлена качеством продукта, большим количеством инструментов, хорошей информационной поддержкой. На практике, сборка XAMPP, по непонятным причинам, более популярна, у западных разработчиков.
Системные требования для установки XAMPP
От XAMPP не нужно ждать подводных камней. Здесь всё доработано до мелочей. XAMPP можно установить на локальную машину, с операционными системами: Windows 2008, Vista, Win 7, Win 8. Даже есть вариант для XP SP3.
Что входит в сборку XAMPP
Акроним XAMPP означает, что данную сборку можно установить не только на Windows, но и на любую другую ось. Об этом говорит первая буква [X]. Буквы AMP означают классические Apache+MySQL+PHP, а вот последняя буква [P] означает язык программирования Perl. Именно по этому, XAMPP называют кроссплатформенной сборкой локального веб-сервера.
XAMPP локальный сервер и Bitnami
Разработчики XAMPP пошли дальше других и создали облачный сервер Bitnami. Bitnami для XAMPP значительно упрощает разработку приложений PHP поверх Apache. Используя Bitnami можно легко установить популярные CMS открытым исходным кодом: WordPress, Drupal и Joomla! и т.п.
Где скачать XAMPP
XAMPP локальный сервер не нужно искать на форумах и других ресурсах. Есть официальный сайт с бесплатной загрузкой релиза. Официальный сайт XAMPP: https://www.apachefriends.org/ru/index.html. Скачать тут.
Скачать XAMPP
На официальном сайте забираем версию для Windows 7. Предварительно необходимо решить, с какой версией PHP вам нужно работать. Есть три варианта PHP: 5.6.30, 7.0.15, 7.1.1. Нижняя версия php периодически меняется. Я выбираю: xampp-win32-5.6.30-0-VC11-installer.
Для информации: На этой же страницы можно скачать XAMPP для Linux и OS X.
Установка XAMPP на Windows 7 по шагам
Как видите по названию релиза, XAMPP скачиваем с инсталлятором, что значительно упрощает его установку.
Для спокойствия проверяем скачанный файл антивирусом. После проверки запускаем установку от имени администратора.
Шаг 1.
Шаг 2.
Выделяем все модули сервера для установки
Шаг 3.
Шаг 4.
Bitnamy пропускаем, поэтому чек бок открываем.
Шаг 5.
Шаг 6.
Процесс установки достаточно долгий, наберитесь терпения.
Шаг 7. Финиш
Запуск XAMPP
Работаем на Windows 7.
XAMPP установлен, пора запускать. Запускается XMAPP ярлыком «XMAPP Control Panel».
XAMPP открыть панель
При открытии программы, XAMPP проверяет систему компьютера. Если система соответствует требованиям XAMPP для запуска модулей, ошибок не будет. Ошибки будут видны в окне информации и выделены красным цветом.
Привожу пример скриншота с ошибками. В примере, я вижу, что порт 80 занят и запуск Apache не возможен.
XMAPP, занят порт 80: как освободить порт 80
Невозможность запустить модуль Apache из-за занятости порта 80, одна из распространенных ошибок Windows. Если вы видите подобную информацию, значит запустить Apache, вы не сможете. Ваша задача освободить этот порт или запустить XAMPP на другом порту.
Советую для решения этой проблемы, почитать лучший ответ на оф.сайте XAMPP. https://community.apachefriends.org/f/viewtopic.php?f=22&t=69784&p=239058#p239059.
Пример освобождения порта 80 Windows
Когда я готовил эту статью и заново ставил XAMP, получил ошибку, что порт 80 занят. При попытке открыть в браузере адрес: http://localhost вижу такую картинку.
Для этого идем на вкладку Панель управление>>>Все элементы мелкие значки>>>Программы и компоненты>>>Включение и отключение компонентов Windows и отключаем IIS с перегрузкой компьютера. Всё порт 80 свободен.
IIS отключить
Это только пример из нескольких возможных сценарием, почему занят порт 80. Можно вообще запустить XMAPP на другом порту, например 8080. Ссылка исправлений вверх по тексту.
Панель XAMPP
Познакомимся с панелью XAMPP.
- Запускаем XAMPP от имени администратора;
- Смотрим отсутствие ошибок;
Панель XAMPP содержит все доступы для работы с модулями платформы и со всеми необходимыми инструментами Windows.
- Кнопки справа: настройки XAMPP и инструменты Windows
- Видим колонки: Start, Admin и Config.
- Start они же Stop, запускают останавливают модули. Mercury это почтовый сервер.
- Admin. Это кнопки доступа в административные панели модулей.
- Config. Отличные кнопки. На кнопках Config вы найдете доступ ко всем файлам конфигурации модулей системы.
Настройки XAMPP
- Netstat — Отличная кнопка, которая покажет все порты, которые задействованы системой на данный момент. Эта кнопка поможет вам, «без танцев с бубнами» посмотреть что висит на порте 80.
- Shell — командная строка.
- Explorer — просто откроет каталог установки XAMPP локальный сервер. Аналог Компьютер>>>Диск C.
- Service — всплывающее окно, со списком всех запущенных служб на оси. Аналог: Панель управление>>>Все элементы мелкие значки>>>Администрирование>>>Службы.
- Help и Quit без комментариев.
- Кнопки слева: запуск/остановка модулей
- Кнопки слева: администрирование
Обратите внимание на столбец кнопок admin. Это вход в панели администрирования модулей. Проверим их работы на примере phpmyadmin.
XAMPP панель phpmyadminВидим, стандартную панель phpmyadmin с которой можно работать без танцев с бубнами, как например на Денвер.
Примечание: Если бы XAMPP был на русском, цены бы ему не было.
Как запустить XAMPP
После исправления всех ошибок, можно запускать XAMPP. Запуск XAMPP это start необходимых для работы модулей: Apache, MySQL.
необходимые модули XAMPP
Проверка работы XAMPP
Для проверки работы XAMPP в адресной строке браузера пишем http://localhost.
Если всё сделали правильно и всё работает правильно видим панель сервера с кнопками управления.
XAMPP локальный сервер панель админа
XAMPP панель phpmyadmin
XAMPP php информация о сборке
Вывод
В этой статье, я показал, как установить XAMPP локальный сервер на Windows 7. Познакомил вас с панелью и настройкой XAMPP, запуском модулей, необходимых для работы и дал ссылку на исправление ошибки: xampp занят порт 80. Не показал, как использовать кнопки config. Это очень удобный доступ для всех конфигурационных файлов модулей XAMPP.
В следующей статье я покажу, как установить на XAMPP WordPress, а в следующей Joomla. Причем сделаю это без Bitnami, хотя с Bitnami это совсем просто.