Как убедиться в работоспособности связки apache php в браузере
Устанавливаем Apache2 + PHP5 + MySQL + phpMyAdmin
Прежде чем выносить свое Web-приложение в интернет его надо разработать. Лучше всего делать это локально, установив необходимое программное обеспечение на своем компьютере. Так вы сможете создавать и тестировать ваше приложение без доступа к Интернету.
Для создания приложений требуются следующие программы:- Beб-cepвep (в нашем случае Apache)
- Язык программирования, работающий на стороне сервера (в нашем случае PHP)
- Cepвep баз данных (в нашем случае MySQL).
Рассмотрим, как установить и настроить связку Apache, PHP и MySQL:
Установка и проверка работоспособности Web-сервера Apache
Для установки сервера Apache в Debian используем команду apt-get:
Чтобы убедиться в том, что сервер установлен на вашей машине, в строке браузера набираем:
Если необходимо, после установки Apache можно перейти к настройке виртуальных хостов
Установка и проверка работоспособности PHP
- С помощью apt-get устанавливаем необходимые файлы:
3. Проверяем работоспособность PHP. Для этого создаем тестовый файл в директории, в которой находятся html файлы localhost (допустим, это директория /var/www):
и запускаем его в браузере:
Если все OK, вы увидите таблицу с информацией о текущем статусе PHP
Устанавливаем и проверяем работоспособность MySQL
Для установки mysql вводим команду:
После завершения установки MySQL необходимо выполнить сценарий mysql_secure_installation. Для этого в окне терминала пишем команду:
- Сценарий сразу запросит пароль от учетной записи «root», который был задан во время установки. Вводим пароль и жмем клавишу “Enter”.
- Если пароль был введен правильно, сценарий предложит его сменить.
- Следующим вопросом будет предложение на удаление анонимных пользователей. На боевом хостинге они не нужны, поэтому соглашаемся (вводим в терминале “Y”).
- Далее сценарий предложит заблокировать root пользователю возможность подключаться с удаленных хостов. Для безопасности это очень хорошо, поэтому соглашаемся. Пользователь с полными правами должен подключаться к серверу баз данных только локально. Вводим «Y» и жмем клавишу «Enter».
- В очередном вопросе мастер предложит удалить тестовые базы. Они нам не нужны, поэтому соглашаемся.
- Последний вопрос будет связан с разрешение перезагрузки таблицы привилегий. Соглашаемся, и все наши ответы на предыдущие вопросы немедленно вступят в силу.
Далее попробуем поработать в терминале с MySQL. Для входа в MySQL вводим команду:
после этого mysql запросит пароль root-пользователя. После этого в терминале появится приглашение:
Просмотреть таблицы в базе данных mysql можно так:
Среди прочих таблиц, там есть таблица user, которая содержит учетные записи пользователей. Просмотреть ее содержимое можно с помощью запроса:
Не забываем ставить точку с запятой в конце каждого запроса!
Для выхода задаем команду
На этом шаге можешь считать, что WEB-сервер на Debian 7 полностью готов к работе. Ключевые компоненты установлены и готовы обслуживать толпы клиентов. Для полного счастья не хватает FTP доступа и удобной панели управления базами данных.
Установка и настройка phpMyAdmin
Для тех, кто предпочитает графическую оболочку для работы с базами данных, можно установить phpMyAdmin.
ВАЖНО:
необходимо иметь в виду некоторые вопросы безопасности при использовании phpMyAdmin, поскольку он:
- Напрямую взаимодействует с MySQL.
- Выполняет аутентификацию использую логин и пароль MySQL.
- Выполняет и возвращает результаты произвольных запросов SQL.
Устанавливаем phpmyadmin как обычно:
Установка phpMyAdmin завершена. Чтобы протестировать этот инструмент в работе, необходимо добавить phpMyAdmin к конфигурации Apache.
Добавляем phpMyAdmin к конфигурации Apache
Для этого открываем конфигурационный файл Apache:
Перемещаемся в его конец и добавляем строчку для подключения phpMyAdmin:
Сохраняем изменения и перезагружаем Apache (service apache2 restart)
Проверяем работоспособность phpMySql
В браузере переходим по ссылке
Защищаем phpMyAdmin
Проще всего это сделать с помощью установки дополнительной аутентификации на уровне web-сервера. При обращении к директории, в которой установлен phpMyAdmin, web-сервер будет запрашивать связку логин/пароль. Неправильный ввод данных на этом уровне не позволит злоумышленнику получить доступ к странице ввода учетных данных phpMyAdmin. Пробить такую защиту тоже можно, но сделать это будет намного сложней.
-
Настроим авторизацию на уровне Apache
Сначала откроем конфигурационный файл phpMyAdmin, который используется с Apache:
Находим в файле блок «» и дописываем директиву «AllowOverride All». Отредактированный блок в итоге должен выглядеть так:
<Directory /usr/share/phpmyadmin>
Options FollowSymLinks
DirectoryIndex index.php
//Остальной текст оставляем как есть
AllowOverride All
</Directory>
Прописываем в этом файле необходимость авторизации на уровне web-сервера:
В конфигурационном файле использовались следующие директивы:
- AuthType – директива определяет тип идентификации пользователя.
- AuthName – директива используется совместно с предыдущей. В ней пишем текст, который будет отображаться в диалоге запроса логина/пароля. Значением директивы может быть абсолютно любой текст.
- AuthUserFile – значением директивы выступает путь к файлу, содержащий информацию о пользователях и их паролях, которые могут получить доступ к закрытому ресурсу. На данном этапе этого файла нет, мы создадим его чуть позже.
- Require – директива позволяет определить принцип аутентификации. Она может принимать несколько значений (например, мы можем перечислить пользователей или группы пользователей, которые могут получать доступ к закрытому ресурсу). Значение Valid-user подразумевает, что получить доступ к закрытому ресурсу могут получить все пользователи, доступные в файле AuthUserFile.
Имя пользователя выбираем любое, с системными пользователями оно не переплетается. Утилита htpasswd запросит пароль для нового пользователя. Придумываем пароль и после завершения создания пользователя перезапускаем apache:
Проверяем авторизацию на уровне web-сервера
Попробуем обратиться к phpMyAdmin. Если все описанные выше манипуляции были проделаны правильно, то страница входа phpMyAdmin сразу будет недоступна. Вместо нее появится окно с запросом имени пользователя и пароля. Вводим данные, которые мы указали утилите htpasswd и только после этого попадаем на страницу входа в phpMyAdmin.
В этой статье мы приведем краткий обзор этапов настройки Apache в среде Windows , а также ссылки на различные дополнительные ресурсы.
Предупреждение
Если на вашем компьютере уже установлен один из вариантов AMP :
- Впоследствии вам будет затруднительно вернуться к старой версии AMP . Потому что различные настройки, которые мы будем задавать, перепишут значения реестра и приведут к изменению среды в целом;
- Если вам нужно сохранить какие-либо конфигурации ( Apache , PHP , MySQL ) или данные, прежде чем выполнять шаги, описанные в этой инструкции, создайте все необходимые резервные копии.
Настройка MySQL
Примечание
Чтобы сделать эту инструкцию максимально доступной, мы пропустили несколько сценариев конфигурации сервера MySQL для Apache Windows 7 . Это и многое другое изложено здесь .
По умолчанию MySQL устанавливается с режимом STRICT , который может привести к возникновению некоторых ошибок при использовании расширений и приложений, не рассматриваемых в данной инструкции. Для получения дополнительной информации обратитесь к этому ресурсу.
Настройка Apache
- Загрузите инсталляционный пакет. На данный момент предпочтительно использовать версию 2.2;
- Запустите мастер установки и выполните все этапы, пока не дойдете до шага « Информация о сервере ». Здесь задайте для каждого из полей приведенные ниже значения, если у вас нет конкретных требований для настройки сервера Apache :
1. localhost
2. localhost
3. admin@localhost
Ресурсы
Настройка PHP
Скачайте PHP и выберите предпочтительную версию в формате Zip . Различные настраиваемые опции связаны с тем, как PHP-код базы компилируется в двоичный код, и вам ничего не нужно изменять.
Создайте в папке, где у вас устанавливаются программные файлы, директорию под названием PHP .
Найдите загруженный Zip-файл , переместите его во вновь созданную папку и распакуйте архив.
Теперь добавим путь к PHP к глобальной переменной PATH . Для этого следуйте инструкциям, приведенным выше.
Конфигурирование PHP
Конфигурирование PHP сводится к редактированию файла php.ini . Пример файла для различных сценариев уже находятся в вашей папке PHP . Переименуйте файл php.ini-development в php.ini и откройте его в текстовом редакторе. Доступные значения для различных параметров задокументированы в файле php.ini ( обратите внимание, что это общие настройки для сервера, применяемые для всех проектов ):
- Динамические расширения содержат дополнительные модули, которые можно загрузить вместе с PHP . В файле вы найдете закомментированные названия модулей, которые были добавлены в пакете с PHP ( директория ext ). Если вы хотите, активировать какой-либо из этих модулей, выведите из комментариев одно из следующих имен расширений:
- php_curl.dll ;
- php_gd2.dll ;
- php_mbstring.dll ;
- php_mysql.dll ;
- php_mysqli.dll ;
- php_pdo.dll ;
- php_pdo_mysql.dll ;
- php_xsl.dll ;
- session.save_path .
Настройка Apache для работы с PHP
Для DirectoryIndex добавьте index.php и index.htm в качестве возможных файлов, если запрашивается каталог. Это делается следующим образом:
В конце файла добавьте следующую строку, которая будет указывать, где размещается файл php.ini :
Перезагрузка и тестирование PHP
После внесения изменений в конфигурационные файлы вам необходимо перезапустить Apache , чтобы изменения вступили в действие. Поэтому давайте перезапустим Apache с помощью инструмента Apache Monitor , который можно найти в строке состояния Windows .
Теперь мы протестируем, как работает PHP . Перейдите в корневой каталог документов веб-сервера ( по умолчанию это C:Program FilesApache Software FoundationApache2.2htdocs ) и добавьте файл с именем phpinfo.php со следующим содержимым:
Установка и настройка XDebug
Пакет установки Apache Php MySQL в Windows 7 будет неполным без Xdebug . На этой странице вы сможете найти актуальную версию Xdebug .
Скопируйте всю страницу phpinfo , которую мы запустили ранее и вставьте ее в текстовое поле, после этого следуйте инструкциям по установке.
Веб-сервер – программа, которая запущена на локальной или удаленной машине, и главное её предназначение – позволять пользователю просматривать веб-документы. Когда в адресной строке вводится адрес сайта, при нажатии клавиши Enter браузер формирует некий запрос, направленный удаленному компьютеру — веб-серверу.
Главными преимуществами Apache являются стабильность, быстродействие и гибкость, и обусловлены они модульной организацией, а также тем, что разработку ведёт открытая группа программистов, хоть и под официальным названием Apache Software Foundation .
Apache поддерживает огромное количество операционных систем и аппаратных платформ, и довольно часто его используют под управлением операционной системы Windows. Немаловажно и то, что данный web-сервер распространяется совершенно бесплатно.
О том, как установить сервер Apache для операционной системы Windows 7, пойдет речь в данной статье.
Установка Apache
В первую очередь необходимо скачать последнюю версию дистрибутива Apache без поддержки SSL и запустить установку. В приветственном окне нужно кликнуть на « Next », прочесть лицензионное соглашение разработчика и подтвердить свое согласие с ним.
Затем, в окне установки необходимо заполнить поля так, как показано на картинке ниже, а в поле « Administrator’s Email Address » указать адрес своей электронной почты, кликнуть « Next » и установить переключатель в положение « Custom ».
Далее, переходим к следующему шагу процесса « установка Apache ». По умолчанию веб-сервер производит инсталляцию в папку C:Program FilesApache Software FoundationApache 2.2 .
Далее необходимо создать директорию www на диске C и указать её в качестве установочной папки для Apache, кликнуть « Next » в этом и « Install » в следующем окне. Когда установка закончится, нажмите на « Finish ».
Если все прошло успешно, в трее должен появиться значок управления веб-сервером Apache. Остановить и перезагрузить его можно, кликнув на значке левой кнопкой мыши.
Кликнув по тому же значку правой кнопкой мыши, можно перейти к различным системным службам операционной системы или открыть монитор Apache.
Если появилась страница с воодушевляющей надписью « It works! », значит, установка Apache прошла успешно, и он функционирует правильно.
Базовая настройка веб-сервера
Хоть Apache и является весьма удобным и исключительно надёжным, не все готовы его использовать как локальный сервер по ряду причин, и основная — отсутствие даже в среде Microsoft Windows какого-либо графического конфигуратора, что довольно непривычно для большинства пользователей.
- Запустить Apache под платформой Windows 7;
- Хранить в удобной для пользователя директории файлы будущего сайта (например, C:www);
- Не испытывать проблем с кодировкой, а в частности — с отображением кириллицы;
- Возможность работать с несколькими сайтами одновременно.
Для начала нужно выполнить настройку той директории, которая будет использоваться сервером в качестве папки веб-сайта. Найдите в тексте строку, которая начинается с DocumentRoot . Данная директива определяет, какая папка будет являться корневой.
Исправьте её на DocumentRoot “ C:/www ”. Следует уточнить, что слэши в этом файле должны быть наклонены вправо, а не влево, как, вероятно, уже привыкли пользователи Windows. После вышеуказанных манипуляций, проблема с месторасположением вашего сайта решена.
Далее необходимо установить для директории правила безопасности. В Apache для этой цели используется директива Directory :
Список используемых параметров:
Options. Возможны следующие варианты:
- AuthConfig – позволяет использовать директивы для авторизации;
- FileInfo – разрешает использование директив для работы с различными типами документов;
- Indexes – разрешает использование директив для работы с файлами индексации;
- Limit – разрешает использование директив для определения доступа к хосту;
- Options – разрешает использование директив для работы с определенными специфическими функциями директорий;
- All – все вышеуказанное вместе;
- None – ничего из вышеуказанного вместе.
- Deny, Allow – Deny определяется перед директивой Allow, доступ разрешен по умолчанию, кроме хостов, которые указаны в следующей после Deny from строке;
- Allow,Deny – Allow определяется перед директивой Deny, доступ запрещен по умолчанию, кроме хостов, которые указаны в следующей после Allow from строке;
- Mutual-failure – разрешен доступ только таких хостов, которые отсутствуют в Deny и присутствуют в Allow.
Говоря другими словами, для папки C:/www и всех её подпапок выбраны следующие параметры:
Если страница успешно открылась, есть вероятность, что вместо кириллических символов вы увидите нечитаемые символы. Отображаться они могут по двум причинам. Во-первых , веб-сервер предоставляет вашему браузеру, который запросил страницу, кодировку по умолчанию. Во-вторых , как ни странно, кодировка эта кириллической не является.
Если пресловутый Internet Explorer в подобных случаях определяет кодировку из самой страницы, то, к примеру, Mozilla Firefox и Opera к подобным действиям склонности совершенно не имеют, и способ выставления кодировки в браузере вручную едва ли можно назвать удобным. Следовательно, необходимо настроить Apache на выдачу по умолчанию необходимой кодировки.
Для того чтобы добавить дополнительный сайт, создайте директорию, использующуюся в качестве его корневой, к примеру, C:www2 . Предположив, что сайт будет откликаться на адрес 127.0.0.2 , дайте ему имя site911 и в самом конце раздела VirtualHosts добавьте следующие строки:
Перезапустите сервер Apache. Набрав в адресной строке браузера 127.0.0.1 , вы попадёте на ваш первый локальный сайт, а набрав 127.0.0.2 – на второй локальный сайт. Следует иметь в виду, что внутри каждого контейнера VirtualHosts могут использоваться абсолютно любые директивы веб-сервера Apache, благодаря чему можно каждый сайт настраивать наидетальнейшим образом.
Установка и настройка завершена, и теперь вы можете полноценно приступить к изучению работы сервера Apache на практике.
Если же вы решили вплотную заняться администрированием веб-сайтов, следующим вашим шагом должно стать изучение связки Apache PHP MySQL, ведь без системы управления базами данных, а также без поддержки одного из самых распространенных языков веб-программирования и веб-инструмента для администрирования системы MySQL не обходится ни один сервер на просторах всемирной сети. Как говорится, « тяжело в учении, но легко в бою ».
В ходе данной инструкции мы подробно рассмотрим установку веб сервера Apache, PHP, Tomcat (для поддержки JSP) и их привязку для совместной работы. Рассмотрим примерный файл конфигурации Apache. Затем мы произведем установку MySQL сервера и рассмотрим примеры доступа к нему из PHP и JSP. Установим PHPMyAdmin для работы с MySQL.
Необходимые компоненты
Установка Apache
Для начала давайте создадим на диске С папку Server, куда мы будем устанавливать все нам необходимое. Предварительно закачаем все необходимое нам программное обеспечение, можно те же версии что использовал я, а можно и выше.
Запускаем apache_2.0.52-win32-x86-no_ssl и видим окно приветствия:
Появляется окошко, где нам предлагают ознакомиться с лицензией на использование данного продукта, выбираем «I accept….» и жмем «Next».
Немного истории, и снова «Next».
В окошко информации о сервере вводим данные, как показано выше на картинке:
Network Domain: localhost
Server name: localhost
Administrator`s Email Address: localhost»@localhost
Выбираем Custom для выбора всех компонентов для установки.
Выбираем все для полной установки, меняем путь инсталляции на C:ServerApache2
Опять жмем «Next».
Наблюдаем ход установки.
Установка завершена. В правом нижнем углу появился заначек?
Если да то наш веб-сервер установился. Щелкаем на значке левой кнопкой мыши и открываем панель управления:
Здесь мы можем стартовать, остановить, или перезапустить наш сервер.
Значит сервер установлен удачно.
Установка PHP
Извлекаем содержимое php-4.3.9-Win32.zip в папочку C:Server и переименовываем получившеюся папку «php-4.3.9-Win32» в «php4».
Теперь нам надо дать понять серверу что у нас есть PHP интерпретатор.
Сохраняем файл. Перезапускаем наш сервер (кнопочка restart в панели управления сервером), еще не забыли как?
Устанавливаем поддержку JSP
Для этого нам необходимо установить JDK версии 1.5, так как мы будем устанавливать Tomcat 5, а он на версии ниже 1.5 не работает.
Соглашаемся с лицензионным соглашением.
Оставляем все как есть
Далее начинается установка среды выполнения
Также оставляем все как есть.
Выскакивает диалог выбора установки плагинов к имеющимся браузерам, как видите у меня только один.
Приступаем к установке Tomcat 5.
Принимаем приветствие и лицензионное соглашение
Выбираем полную установку, помечая все компоненты галочками.
Устанавливаем все в туже папочку “Server”
Конфигурацию оставляем по умолчанию.
Проверяем путь до JRE.
Ок. все готово. Но пока Tomcat работает сам по себе и не связан с Apache.
Теперь наша задача состоит в том чтобы прикрутить Tomcat на localhost:
После чего необходимо перезагрузить сервер Apache2.
Конфигурация сервера
Сохраняем. Перезагружаем сервер.
Устанавливаем MySQL сервер
Распаковываем файл mysql-4.1.7-win.zip и запускаем файл Setup.exe
Приветствие, жмем Next
Здесь выбираем Custom, так как нам необходимо установить полностью все компоненты и указать путь инсталляции.
Выбираем все компоненты для установки, и указываем путь для инсталляции C:ServerMySQL Server 4.1. Идем далее.
Готовы к началу процесса инсталляции? Жмем Install.
Наблюдаем процесс инсталляции.
Ставим галочку на опции «Конфигурировать MySQL сервер». И завершаем процесс установки приступая к конфигурации.
Выбираем стандартную конфигурацию, что бы совсем не запудрить себе мозги, потом при желании можно попробовать полазить в настройках.
Указываем, что MySQL сервер будет запускаться как служба Windows.
Указываем пароль для администратора, допустим это будет «password».
Execute и все готово! После чего мы наблюдаем следующую картинку в нижнем правом углу:
Теперь тестируем наш MySQL сервер. Создадим в папке www файл index.php следующего содержания:
Не тут то было! Вылезет ошибка «Client does not support authentication protocol requested by server; consider upgrading MySQL client»
Ну что же это небольшая не совместимость. . . В MySQL 4.1 применяется новый способ хранения паролей и из-за этого вылезает несовместимость всех старых клиентов с MySQL. Что же делать?
Запускаем C:ServerMySQL Server 4.1binmysql.exe и набираем следующую команду как показано на рисунке:
Набираем set password for жмем Enter
Набираем root@localhost = old_password(‘password’)
Жмем Enter. Набираем q жмем Enter, окошко закрывается.
Теперь нам необходимо прикрутить коннектор для подключения к MySQL серверу из JSP.
Распаковываем mysql-connector-java-3.1.6.zip. Папочку mysql-connector-java-3.1.6. переименовываем в jconnector (C:Serverjconnector). Берем из этой папочки файл mysql-connector-java-3.1.6-bin.jar и копируем его в папку C:ServerTomcat 5.5commonlib.
Ну теперь надо попробовать подключиться к MySQL серверу из JSP. Давайте в папочке C:ServerTomcat 5.5webappsjsp-examples создадим файл test.jsp:
Ок все работает!
Ну и заключительный момент установка PHPMyAdmin
Для этого разархивируем phpMyAdmin-2.6.0-pl3.zip в папку C:Serverwww и переименуем в phpmyadmin.
Читайте также: