50468 (Установка и настройка локального web-сервера Apache, PHP, MySQL под операционную систему Windows), страница 7
Описание файла
Документ из архива "Установка и настройка локального web-сервера Apache, PHP, MySQL под операционную систему Windows", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "50468"
Текст 7 страницы из документа "50468"
Нет необходимости проделывать одно и тоже для двух серверов, т.к. понятно если тест работает на одном сервере, то это будет работать и на другом (в нашем случае). Это происходит, потому что параметры обоих серверов одинаковые (мы их описали в файле httpd.conf), разное у них только расположение файлов в папках. Здесь работает принцип: все параметры не указанные в настройках виртуального сервера, должны наследоваться от главного сервера.
С учетом сказанного дальнейшее тестирование проведем для адреса http://localhost, если потребуется произвести тест на обоих серверах, то об этом будет сказано дополнительно.
3.3. Тест PHP
Создайте файл test_php.phpв папке localhost.Содержание файла test_php.php:
echo “Привет, $n! Тест PHP выполнен!
”;
phpinfo();
?>
Откройте браузер и наберите следующий адрес: http://localhost/test_php.php?n=Виктор Сергеевич .
Результат работы скрипта:
Мы передали скрипту значение переменной, при помощи метода GET. А затем выполнили функцию phpinfo(), которая отображает состояние PHP. Можно просмотреть настройки PHPи узнать, какие модули подключены. Функция phpinfo()отображает детальную информацию об интерпретаторе:
♦ Версию РНР.
♦ Версию операционной системы.
♦ Параметры, заданные при сборке РНР.
♦ Дату сборки интерпретатора.
♦ Сведения о дополнительных модулях.
♦ Переменные окружения — основные и локальные настройки интерпретатора.
♦ Заголовки HTTP.
♦ Лицензию РНР.
Как правило, данная функция используется один-единственный раз: при установке интерпретатора для проверки его работоспособности.
К информационным функциям относятся три функции: phpinfo(); phpversion(); getlastmod().
Функция phpversion()просто отображает версию интерпретатора. Например: PHP Version 4.3.2
Функция getlastmod()очень полезна — отображает время последнего изменения сценария. Использовать ее можно примерно так:
echo date ("d.m.Y", getlastmodO);
3.4. Тест MySQL
Для удобной работы с MySQLсоздан специальный набор скриптов под названием PhpMyAdmin(имеется русская версия).
Cоздайте файл test_mysql.php:
if (!mysql_connect("localhost","root",""))
{
echo "Не удалось соединиться с сервером\n";
echo mysql_error();
exit;
}
echo "MySQL сервер работает!"
?>
Откройте браузер и наберите следующий адрес: http://localhost/test_mysql.php:
Можно провести более детальное тестирование работы MySQL.Создайте PHP-сценарий с именем mysql.phpв каталоге D:\home\localhost\:
echo "";
//Открываем соединение с СУБД MySQL:
//пользователь: root, пароль: пустой.
@mysql_connect("localhost", "root", "")
or die(mysql_error() ) ;
//Будем работать с базой данных mysql которая существует по
// умолчанию и хранит конфигурацию сервера MySQL.
@mysql_select_db("mysql")
or die(mysql_error());
// Выбираем все записи из таблицы users БД mysql.
$r = @mysql_query("SELECT * FROM user")
or die(mysql_error());
//В цикле печатаем каждую найденную строку,
while ($row = mysql_fetch_assoc($r))
{
print_r ($row) ;
}
?>
Запустите серверы (Apacheи MySQL) и наберите в браузере адрес: http://localhost/mysql.php.
Обратите внимание, что СУБД MySQLзапущена на текущей машине, а значит, для соединения с ней нужно указывать адрес сервера localhost. Мы сконфигурировали СУБДтак, чтобы она принимала запросы только с текущей машины. Пользователь rootсуществует сразу же после инсталляции и получает неограниченный доступ ко всем таблицам и базам данных. При установке MySQLпользователю rootне назначается пароль, так что в качестве последнего параметра функции mysql_connect()передается пустая строка.
Для работы с MySQLв РНР 5необходимо подключение библиотеки расширения php_mysql.dll. В РНР 4функции для работы с этой СУБДвстроены в ядро.
Если все сконфигурировано правильно, вы получите несколько десятков строк вывода в браузере без сообщений об ошибках. Этот скрипт распечатывает всю информацию о пользователях MySQL, которая хранится в таблице userбазы данных с именем mysql:
В пределах СУБДобычно существует несколько именованных баз данных, каждой из которых можно назначить отдельного пользователя с соответствующими правами доступа.
В листинге config.php представлен код файла, содержащий параметры соединения с базой данных, скрипт установления соединения и функцию puterror, предназначенную для вывода сообщений об ошибках соединения в браузер. Этот код рекомендуется включать в начало каждого файла, в котором происходит обращение к базе данных. С его помощью осуществляется соединение с базой данных (include "config.php"):
//листингconfig.php - код файла, содержащего параметры соединения с базой данных
//предназначен для вывода сообщений об ошибках соединения в браузер
$dblocation = "localhost"; //Имя сервера
$dbname = "auth"; //Имя базы данных
$dbuser = "root"; //Имя пользователя базы данных
$dbpasswd = ""; //Пароль
//Осуществляем соединение с сервером базы данных
//Подавляем вывод ошибок символом @ перед вызовом функции
$dbcnx=@mysql_connect($dblocation,$dbuser,$dbpasswd);
if (!$dbcnx)
{
echo("
В настоящее время сервер базы данных не доступен,поэтому корректное отображение страницы невозможною
");exit();
}
//Осуществляем выбор базы данных
//Подавляем вывод ошибок символом @ перед вызовом функции
if(!@mysql_select_db($dbname,$dbcnx))
{
echo("
В настоящее время база данных не доступена,поэтому корректное отображение страницы невозможною
");exit();
}
//Небольшая вспомогательная функция,которая выводит сообщение
//об ошибке в случае ошибки запроса к базе данных
function puterror($message)
{
echo("
$message
");exit();
}
?>
Этот файл содержит конфигурационную информацию о соединении с базой данных. Первая переменная — $dblocation— включает имя сервера MySQL. В листинге config.phpзначение этой переменной выставлено для локального хоста. Если вы собираетесь расположить проект на другом хостинге, переменной $dblocationследует присвоить адрес сервера базы данных этого хостинга.
Переменная $dbnameсодержит имя базы данных, $dbuser— имя пользователя, $dbpasswd— пароль. Если вы будете размещать проект на хостинге, необходимо изменить все эти переменные в соответствии с информацией, предоставляемой хост-провайдером.
ЗАКЛЮЧЕНИЕ или С ЧЕГО НАЧАТЬ?
На этом установка и предварительная настройка сервера закончена. Теперь можно создавать и тестировать сайты любого уровня сложности с поддержкой современных Интернет - технологий на локальном компьютере. Для начала рекомендуется приступать к изучению PHPи MySQL. На официальном сайте PHP(http://www.php/net/manual/ru/tutorial.php) полностью переведен на русский язык раздел документации «Вступление » и «Краткое руководство »:
Следует обязательно прочитать его, чтобы получить начальные сведения о языке и приемах программирования. Далее на сайте http://php5/ru/study следует познакомиться с книгой «Самоучитель PHP ». Курс находится в процессе написания. Рекомендуется изучить материал Вадима Ткаченко «Вступление в PHP и MySQL », который находится по адресу http://phpclub.ru/detail/article/phpintro:
Он издавался отдельной книгой, а сейчас - исправленный и дополненный - размещается на сайте:
Ресурс «PHP в деталях » - неисчерпаемый источник информации по PHP, находится по адресу http://phpclub.ru/detail/. Единственное замечание - обращайте внимание на дату написания статьи. Не стоит доверять статьям, написанным до 2003 года.
Если вы еще не прочли сайт http://phpfaq.ru/- обязательно сделайте это. Здесь перечислены проблемы, с которыми рано или поздно столкнется каждый, кто пишет на PHP.
Сайт php.if.uaпосвящен программированию на PHP. На нем Вы найдете документацию и примеры скриптов:
Много документации по PHP на русском языке можно найти на сайте php.spb.ru:
Рекомендуется статья «Установка и настройка Apache+PHР » , расположенная по адресу http://php5/ru/study/instal. И, конечно же - разделы официальной документации, посвященные установке соответствующих программ.
При изучении любого дела обязательно появятся вопросы. Вопросы удобно задавать на форумах. Есть несколько форумов, посвященных PHP. Это самый посещаемый и известный форум: http://phpclub.ru/talk/forumdisplay.php?s=&forumid=12. К сожалению, очень часто на вопрос новичка отвечает еще более зеленый новичок, давая совершенно неправильный ответ. Однако профессионалов там тоже предостаточно, готовых объяснить ошибки и первому и второму. Форум по PHPhttp://forums.webscript.ru/forumdisplay.php?s=&forumid=16отличается очень суровым цензом к качеству ответов.
Задавая вопрос на форуме, помните: что, скорее всего, с ним уже сталкивались другие, и подробные ответы на них есть и их можно найти в поиске. Если же, все-таки, вопрос приходится задавать - то описывайте его как можно подробнее (только своими словами, а не кодом): что делали, что хотели получить, и что получилось в результате, а так же точно копируйте сообщения об ошибках.
Можно рекомендовать следующие книги и журналы:
1. Скляр Д., Трахтенберг А. PHP. Сборник рецептов. – Пер. с англ. – СПб: Символ – Плюс, 2005. – 627 с., ил.Это самая лучшая книги по PHP: собрание конкретных ответов на конкретные вопросы. Книга разбита на 21 главу, каждая глава состоит из разделов вида: постановка проблемы - решение - объяснение. Немного устарела, в плане того, в чем PHP сильно ушел вперед - XML, обработка ошибок. Однако в базовых основах языка остается непревзойдённой. Может использоваться как в виде справочника для решения конкретных проблем, так и в виде учебника. Поддерживается веб-страница для этой книги http://www.oreilly.com/catalog/phpckbk, где приводятся ошибки, примеры и другая дополнительная информация. Можно сделать замечание или задать вопрос, послав электронное письмо по адресу: bookquestions@oreilly.com. За дополнительной информацией по этой книге, о конференциях, Resource Centers и O'Reilly Network обращайтесь к веб-сайту O'Reilly: http://www.oreilly.com.
2. Котеров Д., Костарев А. PHP5 в подлиннике. – СПб: Символ – Плюс, 2005. – 1120 с., ил.Это второе издание знаменитой книги Д. Котерова. Не имеет ничего общего с первым. Это не переработанная, это совершенно новая книга. Она подходит как начинающему, так и профессионалу - в ней изложены все аспекты программирования на PHP. Все исходные коды приведенных в книге листингов доступны для загрузки с сайта книги в виде одного большого архива. Для обеспечения резервирования сайт имеет несколько разных имен (если какое-то из них не будет работать, попробуйте другое): http://book.PHP5.ru; http://PHP5.dWab.nl; http://PHP5.nevod.ru. На сайте имеется ссылка на форум, в котором можно обсудить тот или иной аспект книги, сообщить о замеченной неточности или просто задать вопрос по РНР.
3. Можно почитать очень старый учебник Д. Гилмора «PHP - учебный курс»: http://phpfaq.ru/txt/gilmor.
4. Очень полезен русскоязычный онлайн журнал по PHP- PHPinside.RU.
5. Сборник полезных сведений от автора РНРможно найти по адресу: www.lerdorf.com/tips.pdf(на английском языке).
6. Официальный перевод документации по MySQL: http://dev.mysql.com/doc/mysql/ru/index.html.
7. Книгу М. Грабера «Введение в SQL » можно найти по адресу: http://www.mysql.ru/docs/gruber/.