Чтение онлайн

на главную - закладки

Жанры

Linux: Полное руководство

Аллен Питер В.

Шрифт:

# /etc/init.d/httpd stop

Проверьте наличие библиотеки gd — она необходима для работы с графикой в PHP:

$ rpm -qa | grep gd

$ rpm -ihv gd-1.8.4-4.i386.rpm

Загрузить последнюю версию PHP 5 можно по адресу http://www.php.net/downloads.php.

Скачайте (

www.php.net/downloads-php
) и установите пакет php, если вы его еще не установили. Вам также понадобится пакет php-mysql, обеспечивающий поддержку сервера MySQL языком PHP, и модуль Apache, обеспечивающий поддержку PHP (пакет mod_php).

Затем в файле

httpd.conf
раскомментируйте следующую строчку. После этого файлы с расширением .php будут правильно обрабатываться сервером:

AddType application/x-httpd-php4 .php

Теперь можно проверять правильность настройки двух компонент связки: Apache и PHP.

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

Для проверки работы модуля mod_php создайте тестовый файл

test.php
с таким содержимым:

Листинг 17.1. Файл test.php

<?

 phpinfo;

?>

Этот файл сохраните в каталоге DocumentRoot сервера Apache. Обычно это каталог /var/www/html. Затем запустите любой браузер и введите адресВы должны увидеть в окне браузера сведения о PHP, сервере Apache и других компонентах и библиотеках (рис. 17.1).

Рис. 17.1. Функция phpinfo

Функция phpinfo очень информативна: внимательно изучив информацию, которую она предоставляет, вы много узнаете о своем веб-сервере.

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

php.ini
и находится в каталоге
/etc
. Откройте этот файл в любом текстовом редакторе и раскомментируйте следующую строку, убедившись, что в вашей системе есть файл
mysql.so
(он устанавливается при установке php-mysql):

extension=mysql.so

После этого перейдите в секцию MySQL файла

php.ini
и установите параметры сервера MySQL по умолчанию:

mysql.default_port =

mysql.default_socket =

mysql.default_host = localhost

mysql.default_user =

mysql.default_password =

Эти параметры будут использоваться при установлении соединения с сервером, если в функциях PHP они не будут явно указаны. Никогда не указывайте пользователя root (а тем более его пароль) в качестве пользователя по умолчанию!

Теперь можно приступить к настройке сервера MySQL. Имеет смысл использовать версию MySQL не ниже 3.23, поскольку в этой версии появилась нормальная поддержка транзакций. Если вы устанавливаете MySQL версии 3.23 или выше, то установите еще пакет mod_auth_mysql, обеспечивающий базовую аутентификацию для сервера Apache с использованием таблиц MySQL.

При добавлении сервера MySQL в сценарии загрузки (/etc/rc.d/) обратите внимание на то, что сервер MySQL должен быть запущен ПЕРЕД сервером Apache.

17.3.2. Тестируем созданную конфигурацию

Теперь можно проверить работу всей связки Apache + PHP+MySQL. С этой целью создайте небольшой тестовый файл

mysql_test.php
в каталоге DocumentRoot (
/var/www/html
):

Листинг 17.2. Файл mysql_test.php

<?

 // Используется имя пользователя root и пароль password

 if(!mysql_connect("localhost","root","password"))

 {

echo "He могу соединиться с сервером\n";

echo mysql_error;

exit;

 }

 echo "Работает!"

?>

Как вы уже успели догадаться, если в окне браузера вы увидите слово «Работает!», значит, вы все сделали правильно.

17.3.3. Второй способ: из исходных текстов

У этого способа есть свои преимущества. Во-первых, у вас появится возможность использовать самые последние версии серверов Apache, MySQL и интерпретатора PHP, которых нет в составе даже самого нового дистрибутива Linux. Во-вторых, вы сами сможете контролировать процесс сборки и включать поддержку необходимых вам функций, исключив такую ситуацию, когда, например, разработчики пакетов RPM при сборке интерпретатора PHP забыли включить поддержку сервера MySQL, Мне попадался такой пакет php: функции mysql_connect в нем просто не было.

Скачайте из Интернета последние версии Apache, MySQL и PHP. Предварительно удалите из системы старые версии, если они были установлены. После загрузки распакуйте исходные тексты в каталог /src.

Сначала установите сервер MySQL. С этой целью перейдите в каталог с исходными текстами MySQL и введите следующие команды (первая команда включает поддержку по умолчанию кодировки koi8-r):

# ./configure --with-charset=koi8_ru

# make

# make install

Затем аналогично установите Apache. Для получения информации обо всех возможных ключах сценария configure введите команду

configure --help
.

После этого распакуйте PHP и соберите его следующим образом:

# ./configure --with-mysgl --with-apache=../apache_2.0.0 --with-mod_charset

# make

# make install

Первая команда конфигурирует интерпретатор PHP для работы с сервером баз данных MySQL и веб-сервером Apache, Естественно, вы должны правильно указать путь к исходным текстам Apache с помощью ключа --with-apache.

Поделиться:
Популярные книги

Переписка и деловые бумаги

Чехов Антон Павлович
Документальная литература:
публицистика
5.00
рейтинг книги
Переписка и деловые бумаги

Троцкий. «Демон революции»

Волкогонов Дмитрий Антонович
10 вождей
Научно-образовательная:
история
5.20
рейтинг книги
Троцкий. «Демон революции»

"Фантастика 2025-80". Компиляция. Книги 1-28

Александров Александр
Фантастика 2025. Компиляция
Фантастика:
фэнтези
боевая фантастика
попаданцы
5.00
рейтинг книги
Фантастика 2025-80. Компиляция. Книги 1-28

Путь Шедара

Кораблев Родион
4. Другая сторона
Фантастика:
боевая фантастика
6.83
рейтинг книги
Путь Шедара

UNIX: взаимодействие процессов

Стивенс Уильям Ричард
Компьютеры и Интернет:
программирование
5.00
рейтинг книги
UNIX: взаимодействие процессов

Новейший философский словарь. Постмодернизм.

Грицанов Александр Алексеевич
Справочная литература:
словари
6.25
рейтинг книги
Новейший философский словарь. Постмодернизм.

Я еще князь. Книга XX

Дрейк Сириус
20. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я еще князь. Книга XX

Я еще не бог. Книга XXXV

Дрейк Сириус
35. Дорогой барон!
Фантастика:
аниме
попаданцы
5.00
рейтинг книги
Я еще не бог. Книга XXXV

Иллюзии

Марч Джессика
Любовные романы:
современные любовные романы
6.25
рейтинг книги
Иллюзии

Навигаторы Апокалипсиса

Шалыгин Вячеслав Владимирович
Фантастика:
социально-философская фантастика
5.00
рейтинг книги
Навигаторы Апокалипсиса

Осколки чести

Буджолд Лоис Макмастер
1. Сага о Форкосиганах
Фантастика:
космическая фантастика
9.34
рейтинг книги
Осколки чести

Артур и Джордж

Барнс Джулиан Патрик
Интеллектуальный бестселлер. Читает весь мир.
Детективы:
исторические детективы
6.40
рейтинг книги
Артур и Джордж

Князь Андер Арес 5

Грехов Тимофей
5. Андер Арес
Фантастика:
историческое фэнтези
фэнтези
героическая фантастика
5.00
рейтинг книги
Князь Андер Арес 5

Северянин. Трилогия

Лей Влад
Северянин
Фантастика:
фэнтези
5.75
рейтинг книги
Северянин. Трилогия