Установка и настройка локального web-сервера Apache, PHP, MySQL под операционную систему Windows

Установка и настройка локального web–сервера и его компонентов. Конфигурационные файлы сервера Apache и их натройка. Настройка PHP, MySQL и Sendmail. Проверка работоспособности виртуальных серверов. Создание виртуальных хостов. Тест Server Side Includes.

Рубрика Программирование, компьютеры и кибернетика
Вид учебное пособие
Язык русский
Дата добавления 27.04.2009
Размер файла 6,2 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

? $_GET['id'] из URL http://www.example.com/test.php?id=3 вместо $id;

? $_ENV['HOME'] вместо $HOME.

При работе с полями формы, например, следует каждый раз писать:

$_REQUEST[' … ']

Это делать необходимо из-за того, что все данные из полей формы PHP помещает в глобальный массив $_REQUEST.

Рекомендуется писать скрипты с расчетом на выключенный register_globals=off.

Сценарий, корректно работающий при выключенном register_globals, будет работать и при включенном режиме. Но не наоборот.

Установите строку: register_globals = Off

4. Магические автокавычки. Чтобы код проекта работал в соответствии с описанием, необходимо бывает включить режим magic quotes. Если это не выполнено, к вводимым данным в базу данных MySQL потребуется применить функцию addslashes(), а к извлекаемым данным -- функцию stripslashes().

Включить (магические кавычки) директивы magic_quotes_gpc и magic_quotes_runtime можно в файле php.ini. Они автоматически добавляют или убирают управляющие символы обратной косой черты, причем magic_quotes_gpc выполняет это для входных переменных методов GET, POST и cookie-наборов, a magic_quotes_runtime -- для данных, входящих или исходящих из базы данных.

Примечание: директива конфигурации magic_quotes_gpc действует на значения Get, Post и Cookie. Если она включена, значение (It's "PHP!") автоматически становится (It\'s \"PHP!\"). Мнемонизирование необходимо для вставки в БД.

Если magic_quotes_sybase также включена, одинарные кавычки мнемонизируются одинарной кавычкой вместо backslash, если magic_quotes_gpc или magic_quotes_runtime включена.

Когда magic_quotes включены, все ' (одинарные кавычки), " (двойные кавычки), \ (обратные слэши) и NUL мнемонизируются обратными слэшами автоматически. Если magic_quotes_sybase также включена, одинарные кавычки мнемонизируются одинарной кавычкой вместо backslash.

5. Конфигурирование расширений. PHP поставляется в виде ядра и набора из нескольких десятков «внешних расширений» (DLL-библиотек), которые можно подключать и отключать. Этим процессом можно управлять при помощи следующих директив. Сначала указываем папку, в которой хранятся загружаемые модули: extension_dir = "/usr/php/extensions/"

ЭТА ДИРЕКТИВА - ОДНА ИЗ САМЫХ ВАЖНЫХ. БЕЗ НЕЕ РАСШИРЕНИЯ ПРОСТО НЕ ПОДКЛЮЧАЮТСЯ

Теперь подключим те расширения, которые понадобятся для работы. Для этого нужно найти место, где впервые упоминается директива extension. Надо добавить (или снять комментарии) непосредственно перед ней следующие команды:

extension=php_xsl.dll

extension=php_gd2.dll

extension=php_mysql.dll

Все остальные расширения пока не потребуются. Необходимые библиотеки лучше подключать по мере необходимости (некоторые из них требуют дополнительных настроек).

При компиляции и сборке PHP имеется возможность для каждой библиотеки расширения указать, как именно с ней поступать: собирать ли в виде отдельного DLL-модуля или же помешать код в ядро (php5td.dll). Поэтому многие популярные расширения уже включены в ядро PHP и не требуют дополнительной директивы extension. Такими модулями являются: dom, iconv, libxml, sqlite и т. д. Это определяется экспериментально. Если какой-то модуль не заработает, возможно, разработчики дистрибутива его вынесли из ядра в отдельный DLL-файл и его следует подключить. Или наоборот, его внесли в ядро, и директиву extension нужно убрать.

После подключения новых модулей обязательно нужно проверить, что сервер Apache запускается, а тестовая страница PHP - открывается. И уже после этого открывайте php.ini и добавляйте необходимые модули.

Появились сообщения:

Поэтому провели изменения:

При помощи модуля: extension=php_gd2.dll

осуществляется работа с графической библиотекой GDLib.

Найдите директиву include_path, задающую путь к библиотекам PHP.

;include_path = ".;c:\php\includes"

Снимите с нее знак комментария (точка с запятой) и укажите следующее значение: include_path = ".; \usr\php\PEAR "

PEAR - это набор разнообразных библиотек, написанных на PHP. Некоторые из этих библиотек входят в дистрибутив PHP:

6. Каталог для временных файлов. Найдите директиву:

; upload_tmp_dir = C:\PHP\uploadtemp ; temporary directory for HTTP uploaded files (will use system default if not specified)

Отредактируйте ее: upload_tmp_dir = /tmp

Если значение директивы оставить пустой, то будет использован системный каталог для хранения временных файлов.

7. Сохраните все изменения, сделанные в файле php.ini.

8. После этого скопируйте файл php4ts.dll из папки D:\usr\php:

в каталог C:\Windows\System32:

Этим мы скопировали библиотеки в каталог, который уже присутствует в путях поиска (C:\Windows\System32):

При установке новой версии PHP или после переустановки системы не забывайте повторно скопировать библиотеки.

9. Найдите директиву session. Ее значение должно быть: session.save_path =/tmp

Это путь к временной папке, в которой PHP будет хранить файлы сессий (session files). Поскольку этого каталога пока нет, рекомендуется его создать: D:\tmp, а в проводнике установить для него атрибут Скрытый (Hidden), чтобы случайно не удалить:

10. Откройте файл httpd.conf и раскомметируйте три строки, в которых настроен PHP в виде CGI программы:

AddType application/x-httpd-php phtml php3 php

ScriptAlias /__php_dir__/ "/usr/php/"

Action application/x-httpd-php "/__php_dir__/php.exe"

Директива AddType связывает расширение файла (PHP) с уникальным идентификатором MIME-типа. Далее указывается программа, которую нужно запустить, когда пользователь попытается открыть файл указанного типа. Так как в директиве Action допустимо использовать только URL (но не абсолютные пути), то предварительно назначаем абсолютному пути до PHP -каталога с URL/php/.

11. Сохраните изменения в файле httpd.conf. Перезапустите сервер. Перезагрузка должна выполниться, если не было допущено ошибок.

2.6. Настройка MySQL

Зайдите в папку D:\usr\mysql\bin\:

и запустите файл winmysqladmin.exe:

Должно появиться такое окно:

Введите имя (admin) пользователя и пароль (password):

Нажмите ОК. На панели в нижнем правом углу монитора появился значок светофора. Нажмите на светофор на панели правой клавишей мышки:

Выберете Show me. Появится окно:

Закройте окно, удалите файл my.ini в папке C:\WINDOWS:

Запустите winmysqladmin.exe:

В открывшемся WinMySQLadmin, введите имя (admin) и пароль (password):

Нажмите ОК. Нажмите правой клавишей мыши по значку светофора на панели монитора, выберите Show me, откроется окно:

В открывшемся окне перейдите на закладку my.ini Setup:

Нажмите кнопку «Create ShortCut on Start Menu», а затем нажмите ОК:

Можно перейти к настройке файла my.ini.

Файл my.ini состоит из нескольких секций, нас интересует только секция mysqid. Можно удалить все остальные секции из файла, все равно их игнорирует сервер.

Для изменения значений директив, расположенных в my.ini, снимают знак комментария с соответствующей строки. Многие из этих директив уже записаны в файле, и остается лишь их подкорректировать. Другие же команды там даже и не упоминаются -- для них нужно вручную вписать нужные строки.

Итак, выполняют следующие действия:

1. Укажите IP-адрес, на котором MySQL будет ожидать подключения:

bind-address=127.0.0.1

Рекомендуется использовать только 127.0.0.1, чтобы сервер был доступен лишь с текущей машины (но не из локальной сети). Это позволит обезопасить себя от хакерских атак.

2. Укажите каталог, который MySQL будет использовать для хранения временных файлов (конечно, он должен существовать):

tmpdir=/tmp

3. Укажите путь к каталогу, хранящему файлы различных кодировок:

character-sets-dir=/usr/mysql/share/charsets

4. Укажите кодировку по умолчанию, используемую при создании всех таблиц:

default-character-set=cpl251

Этот параметр очень важен: неверное его значение (в частности, значение, используемое MySQL по умолчанию) приводит к ошибкам при поиске и неправильной сортировке результатов запросов.

5. Укажите основной каталог MySQL, а также папку, где сервер будет хранить свои данные:

basedir=/usr/localhost/mysql/

datadir=/usr/localhost/mysql/data/

6. Раскомметируйте и измените строку, которая устанавливает язык:

language=D:/usr/mysql/share/russian

Остальные параметры затрагивают работу с таблицами типа InnoDB, поддерживающими высокую надежность хранения данных и защищенных от аппаратных сбоев. Работа с такими таблицами не рассматривается, поэтому можно пропустить директивы, касающиеся InnoDB.

Вполне вероятно, что сервер запустится и без настройки всех многочисленных параметров -- просто на "значениях по умолчанию". Однако в этом случае он будет работать неправильно.

Отредактированный my.ini:

#This File was made using the WinMySQLAdmin 1.4 Tool

#03.10.2005 18:21:07

#Uncomment or Add only the keys that you know how works.

#Read the MySQL Manual for instructions

[mysqld]

basedir=D:/usr/mysql

bind-address=127.0.0.1

datadir=D:/usr/mysql/data

language=D:/usr/mysql/share/russian

#slow query log#=

tmpdir=/tmp

#port=3306

#set-variable=key_buffer=16M

default-character-set=cp1251

character-sets-dir=/usr/mysql/share/charsets

[WinMySQLadmin]

Server=D:/usr/mysql/bin/mysqld-nt.exe

user=admin

password=password

В опциях user и password можно в любое время изменить/установить имя пользователя и пароль.

Нажмите «Save Modification», а затем последовательно нажимайте ОК:

Теперь кликните правой кнопкой в любом месте этого окна, и в выпадающем меню выберите команду Hide me, чтобы программа обратно свернулась в трей возле часов. На панели задач в правом нижнем углу монитора появится значок светофора.

При необходимости можно всегда изменить настройки файла my.ini. Для этого нажмите на светофор на панели правой клавишей мышки:

Выберите Show me. Появится знакомое окно:

Далее выполняйте уже описанные действия.

Перезапустите сервер Apache. Если все прошло удачно (сервер перезапустился без ошибок) в файле index.php для проверки работоспособности MySQL поместите следующий код:

<?php

$dblocation = "127.0.0.1";

$dbname = "test";

$dbuser = "root";

$dbpasswd = "";

$dbcnx = @mysql_connect($dblocation, $dbuser, $dbpasswd);

if (!$dbcnx)

{

echo "<p>К сожалению, не доступен сервер MySQL</p>";

exit();

}

if (!@mysql_select_db($dbname,$dbcnx) )

{

echo "<p>К сожалению, не доступна база данных</p>";

exit();

}

$ver = mysql_query("SELECT VERSION()");

if(!$ver)

{

echo "<p>Ошибка в запросе</p>";

exit();

}

echo mysql_result($ver, 0);

?>

В случае успешной интеграции MySQL в связку Apache и PHP, обращение по адресу http://localhost/index.php выведет в окно браузера версию сервера MySQL:

База данных MySQL установлена успешно.

Для входа в систему MySQL в интерфейс командной строки наберите следующее:

> mysql -h hostname -u username -p

Команда mysql запускает монитор MySQL. Это клиент командной строки, который выполняет соединение с сервером MySQL.

Аргументами mysql являются:

1. Ключ -h используется для обозначения хоста, к которому осуществляется подключение -- это компьютер с запущенным сервером MySQL. При вводе этой команды на той же машине, на которой находится сервер MySQL, применять этот ключ, равно как и параметр hostname, вовсе не обязательно. Если на другой, то параметр hostname следует заменить именем машины, на которой выполняется сервер MySQL.

2. Ключ -u используется для указания имени пользователя, под которым требуется осуществить соединение. Если не указать имя пользователя, по умолчанию будет использоваться имя, под которым вы входили в операционную систему.

Если сервер MySQL установлен на вашем собственном компьютере или сервере, необходимо войти в систему под именем root и создать базу данных. Если установка производилась впервые, то root будет единственным пользователем, который имеет доступ к системе.

Если MySQL используется на машине, которую администрирует другой человек, применяйте имя пользователя, которое вам назначил этот администратор.

3. Ключ - р сообщает серверу о том, что вы хотите соединиться с использованием пароля. Можете не использовать этот ключ, если для пользователя, под именем которого вы регистрируетесь, пароль не требуется.

Если вы входите в систему под именем root и не установили пароль, настоятельно рекомендуется установить пароль. Без пароля для пользователя root система не защищена.

Включать пароль в эту строку не обязательно. Сервер MySQL запросит его самостоятельно. Лучше даже его не включать. Если набрать пароль в командной строке, он появится на экране в виде текста и таким образом станет доступным остальным пользователям.

После ввода команды mysql и нажатия клавиши Enter должен быть получен приблизительно такой ответ (Enter password:_):

Если после ввода команды mysql и нажатия клавиши Enter Вы получаете сообщение о том, что программа не найдена или введена неправильная команда, нужно при работе в Windows найти в файле AUTOEXEC.BAT:

строку, в которой устанавливается переменная PATH. Значение переменной PATH надо установить так, чтобы она содержала каталог установки mysql. Если программа установлена в каталоге D:\usr\mysql\bin:

то переменная PATH должна выглядеть так:

SET PATH=D:\usr\mysql\bin; C:\WINDOWS; C:\WINDOWS\COMMAND

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

В ответ на запрос пароля введите пароль пользователя root. Если MySQL-пользователь не имеет пароля, просто нажмите клавишу Enter. Должен наблюдаться приблизительно такой ответ:

Сейчас вы должны наблюдать приглашение MySQL на ввод команды: mysql>_, т.е. система готова к созданию базы данных.

Для выхода из MySQL используют предложение quit.

Осталось только создать базу данных.

2.6. Настройка Send mail

Для настройки откройте файл D:\usr\sbin\sendmail.ini:

В файле sendmail.ini следует сделать следующие исправления.

Переменной Mailserver присвойте имя вашего сервера или его IP-адрес: MAILSERVER=localhost

В переменную From напишите e-mail отправителя по умолчанию:

FROM=sk@localhost.ru

Измените время между отправлениями сообщений (время в секундах):

TIMEOUT=5

Переменной Regkey необходимо указать регистрационный ключ, который генерируется «KeyGen»:

В переменную Replyto укажите Ваш e-mail: REPLYTO=sk@localhost.ru

Файл sendmail.ini после внесенных изменений:

Сохраните изменения. Запустите программу sendmail.exe из консоли:

Для настройки Send mail служит пункт "Configure Sendmail" в меню "Пуск" Windows в папке, созданной установщиком. Вы можете установить нужные параметры с его помощью, или отредактировать d:\usr\sbin\stndmail.ini вручную, изменив его следующим образом:

[OPTIONS];

; Адрес почтового сервера. Укажите здесь "localhost"

; или "127.0.0.1" - адрес вашего компьютера;

; Впрочем, можно указать и SMTP-сервер вашего провайдера;

MAILSERVER=localhost;

; Здесь нужно указать адрес отправителя по умолчанию.;

FROM=ваш@мейл;

; Порт почтового сервера. Пусть остаётся "25";

PORT=25;

; Интервал между отправками сообщений в секундах.

; Измените со 180 на, например, 3;

TIMEOUT=3;

; Регистрационный ключ.;

REGKEY=none;

; Адрес по умолчанию для поля "reply-to".;

REPLYTO=ваш@мейл

Это всё, что требуется для правильной установки Sendmail.

Дальше cкачайте генератор ключей к Sendmail и сохраните его у себя на диске. К версии 2.01 подходят генераторы как от 1.14, так и от предыдущих версий.

Регистрационный ключ в Sendmail привязан к имени Вашего компьютера. Чтобы узнать его, Вам нужно щёлкнуть правой кнопкой мышки по иконке “Мой компьютер” на рабочем столе Windows и, выбрав в выпавшем меню пункт “Свойства” ("Properties"), дождаться появления такого окна.

Запомните имя, присвоенное Вашему компьютеру.

После этого запустите файл tno_s114.exe из архива. Введите имя для регистрации и имя вашего компьютера в соответствующие графы.

Сгенерированный ключ Вам нужно будет подставить в sendmail.ini Вместо REGKEY=none

У Вас получится что-то типа: REGKEY=Имя,Имя_компьютера,12345

Сохраните sendail.ini и попробуйте запустить sendmail.exe. У Вас должно получиться что-то типа

Sendmail for Windows V1.16 at Mon Nov 20 20:00:00 2003

Host name: Имя_компьютера [IP компьютера]

Licensed to Имя for Имя_компьютера [IP компьютера]

Использование этого кряка является противозаконным и решение запускать его или нет, целиком и полностью зависит от Вашей законопослушности. Если Вы хотите вознаградить труды разработчиков, заплатите за Sendmail официально на http://www.webwarper.net/ww/~GZ/www.indigostar.com/ordsend.htm?*

3. ТЕСТИРОВАНИЕ СЕРВЕРА

3.1. Проверка работоспособности виртуальных серверов

При помощи Блокнота создайте два файла с именем index.html. Один сохраните в папке home\localhost:

другой в home\mysite\html:

Содержание первого файла index.html:

<html>

<head><title>Тест сервера</title></head>

<body><h2>Сервер localhost работоспособен!!!</h2></body>

</html>

Содержание второго файла index.html:

<html>

<head><title>Тест сервера</title></head>

<body><h2>Сервер mysite.ru работоспособен!!!</h2></body>

</html>

Набирайте http://localhost в Вашем браузере, должен будет загрузиться файл index.html:

Тоже самое повторите для сервера mysite.ru:

Можете поэкспериментировать с расширениями файла index- .htm, .php. Мы это настраивали.

3.2. Тест SSI (Server Side Includes)

Для того чтобы включить поддержку SSI (Server Side Includes - сборка на стороне сервера) в Apache необходимо в файл httpd.conf добавить следующие строки:

AddType text/html .shtml

AddHandler server-parsed .shtml

Это наиболее стандартный ход. Впрочем, вместо расширения .shtml можно написать .html или .phtml. Главное, чтобы выбранное расширение было идентично расширению, которое использует для обозначения SSI файлов провайдер.

И, естественно, нужно включить сам "механизм" вложения, а для этого добавить к команде Options слово Includes. Тогда строка с командой Options может принять вид: Options Indexes FollowSymLinks Includes.

В настройках Apache было указано, что поддержка SSI используется в файлах с расширениями .shtm и .shtml. Данная технология позволяет создавать одну страницу из нескольких. Это удобно, когда у Вас имеются повторяющиеся элементы на нескольких страницах. Технология SSI позволяет отказаться от использования фреймов, которые часто ругают из-за некорректной работы.

Измените файл index.html следующим образом:

<html>

<head><title>Тест сервера</title></head>

<body>

<h2>Проверка поддержки SSI</h2>

<!--#include virtual="test_ssi.shtml" -->

</body>

</html>

Сохраните данный файл с расширением .shtml.

Затем создайте в директории localhost файл test_ssi.shtml, имеющий следующее содержание:

<H3><I>Данный текст был добавлен в файл index.shtml по средствам технологии SSI</I></H3>

Запустите браузер и наберите http://localhost:

Скопируйте два файла (полученные выше), удалив при этом файл index.html, в папку mysite\html и проверьте работоспособность для адреса http://mysite.ru:

Нет необходимости проделывать одно и тоже для двух серверов, т.к. понятно если тест работает на одном сервере, то это будет работать и на другом (в нашем случае). Это происходит, потому что параметры обоих серверов одинаковые (мы их описали в файле httpd.conf), разное у них только расположение файлов в папках. Здесь работает принцип: все параметры не указанные в настройках виртуального сервера, должны наследоваться от главного сервера.

С учетом сказанного дальнейшее тестирование проведем для адреса http://localhost, если потребуется произвести тест на обоих серверах, то об этом будет сказано дополнительно.

3.3. Тест PHP

Создайте файл test_php.php в папке localhost. Содержание файла test_php.php:

<?php

echo “<h4>Привет, $n! Тест PHP выполнен!</h4>”;

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\:

<?php ## Скрипт для проверки работоспособности MySQL.

echo "<pre>";

//Открываем соединение с СУБД 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("<p> В настоящее время сервер базы данных не доступен,поэтому корректное отображение страницы невозможною</p>");

exit();

}

//Осуществляем выбор базы данных

//Подавляем вывод ошибок символом @ перед вызовом функции

if(!@mysql_select_db($dbname,$dbcnx))

{

echo("<p> В настоящее время база данных не доступена,поэтому корректное отображение страницы невозможною</p>");

exit();

}

//Небольшая вспомогательная функция,которая выводит сообщение

//об ошибке в случае ошибки запроса к базе данных

function puterror($message)

{

echo("<p>$message</p>");

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. К сожалению, очень часто на вопрос новичка отвечает еще более зеленый новичок, давая совершенно неправильный ответ. Однако профессионалов там тоже предостаточно, готовых объяснить ошибки и первому и второму. Форум по PHP http://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/.

8. Дюбуа П. MySQL. Сборник рецептов. - Пер. с англ. - СПб: Символ - Плюс, 2004. - 1056 с., ил. Книга от автора «Библии MySQL» Поля Дюбуа, необходима каждому разработчику, использующему MySQL. Это собрание ответов на любые практические вопросы. На веб-сайте книги http://www.kitebird.com/mysql-cookbook/ можно найти исходные тексты и тестовые данные рассмотренных примеров.

9. Дюбуа. П. MySQL. 2-е издание. Второе издание «Библии MySQL», на которой училось не одно поколение. Объясняет секреты MySQL очень простым и понятным языком.

ЛИТЕРАТУРА

1. Скляр Д., Трахтенберг А. PHP. Сборник рецептов. - Пер. с англ. - СПб: Символ - Плюс, 2005. - 627 с., ил.

2. Котеров Д., Костарев А. PHP5 в подлиннике. - СПб: Символ - Плюс, 2005. - 1120 с., ил.

3. Дюбуа П. MySQL. Сборник рецептов. - Пер. с англ. - СПб: Символ - Плюс, 2004. - 1056 с., ил.


Подобные документы

  • Многопоточный веб-сервер с входным и обрабатывающими модулями. HTTP—протокол передачи гипертекста. Установка и настройка локального веб-сервера "OpenServer". Установка phpMyAdmin, конфигурация PHP. Настройка веб-сервера и виртуальных хостов, модулей.

    курсовая работа [3,2 M], добавлен 08.12.2013

  • Система управления базами данных (СУБД) MySQL. Установка, настройка и запуск MySQL. Окончательная настройка нового MySQL сервера. Основные утилиты и журнальные файлы. Работа с виртуальными хостами. Синтаксис для создания таблиц и управление данными.

    реферат [3,5 M], добавлен 24.06.2019

  • Установка VirtualBox. Создание двух виртуальных машин с операционной системой CentOS. Настройка сетевых интерфейсов в режиме bridgeс и хоста как маршрутизатора для сети. Установка www-сервера. Настройка динамической маршрутизации по протоколу RIP.

    курсовая работа [807,5 K], добавлен 14.07.2012

  • Виды серверов баз данных. MySQL как наиболее приспособленная для применения в среде СУБД. Хранимые и присоединенные процедуры. Операционная среда серверов. Согласованность чтения и тупиковые ситуации. Установка и настройка MySQL Server 5.6 на Windows 7.

    курсовая работа [3,0 M], добавлен 28.12.2015

  • Общие сведения об операционной системе Linux. Анализ информации о серверах. Основные прикладные клиент-серверные технологии Windows. Сведения о SQL-сервере. Общая информация о MySQL–сервере. Установка и специфика конфигурирования MYSQL-сервера на LINUX.

    курсовая работа [1,3 M], добавлен 16.12.2015

  • Создание виртуальной машины для гостевой операционной системы Microsoft Windows Server 2003. Первоначальная настройка установленной операционной системы. Создание DHCP-сервера с диапазоном рабочих адресов. Настройка доменного имени для IP-адреса сервера.

    лабораторная работа [3,2 M], добавлен 20.12.2012

  • Характеристика деятельности предприятия "Регион". Открытие общего доступа к папке или диску. Настройка DHCP-серверов в сети, обеспечивающая ряд преимуществ. Установка, тестирование и настройка Apache, MySQL. Организация терминального доступа к серверу.

    отчет по практике [131,6 K], добавлен 12.11.2014

  • Система доменных имен. Регистрация доменов и обратное преобразование имен. Схема работы DNS сервера. Конфигурация BIND сервера. Расшифровка полей файлов зон. Программное обеспечение, настройка DNS сервера BIND. Проверка работоспособности системы.

    курсовая работа [1,6 M], добавлен 20.09.2013

  • Организационно-штатная структура офисного центра. Выбор и обоснование архитектуры сети. Сервисы конфигурации сервера. Выбор топологии сети. Установка и настройка Active Directory, DNS и файлового сервера под управлением СОС Windows Server 2012 R2.

    курсовая работа [2,5 M], добавлен 10.04.2017

  • Создание локальной сети для рационального использования компьютерного оборудования. Характеристика многопользовательской сетевой операционной системы Debian Linux. Установка web-сервера, настройка виртуальных хостов, почты и Drupal. Работа с Drush.

    курсовая работа [3,6 M], добавлен 01.02.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.