[показать]
Сегодня, на третий день после получения прав доступа к серверу под управлением MS Win2k3 Server, закончилась эпопея с настройкой IIS (Internet Information Server), PHP (Hypertext Processor) и MySQL. Думаю, что будет не лишним рассказать людям как правильно и без лишних телодвижений и потери нервов настроить Web-сервер, работающий с динамическим содержанием страниц.
Для начала нам потребуются следующие пакеты:
1) Установка PHP 5.1.4
* Запускаем
php-5.1.4-installer.exe и следуем инструкциям установочного визарда;
* После успешной установки копируем из архива
php-5.1.4-Win32.zip папку ext в каталог
C:\PHP;
2) Настройка PHP 5.1.4
* Нажимаем сочетание клавиш "
Windows Key + Pause Break" и попадаем в свойства системы, далее следуем в закладку "
Advanced", кликаем на "
Environment Variables". Находим часть "
System Variables", пролистываем до записи с названием "
Path", щёлкаем на кнопку "
Edit" и в самый конец строки поле точки с запятой дописываем пути "
C:\PHP; C:\PHP\ext;";
* В файле "
%SystemRoot%/php.ini" изменяем строчку "
extension_dir = "./"" на "
extension_dir = "C:\PHP\ext"" и убираем комментарии со строк
extension=php_mysql.dll и
extension=php_gd2.dll
* Из папки "
C:\PHP" копируем файл
libmysql.dll в папку
%Systemroot%
* На папку "
C:\PHP\ext" нужно поставить дополнительные права доступа: правый клик -> "
Properties" -> "
Security" -> "
Add" -> "
Advanced" -> "
Find Now". В полученном списке находим - "
Internet Guest Account (IUSR)", даём права "
Read & Execute, List Folder Contents, Read" и сохраняем изменения.
3) Настройка IIS 6.0
* Заходим в настройки IIS (Правый клик на "
My Computer", "
Manage" -> "
Services and Applications" -> "
IIS Manager")
* Контекстное меню папки "
Web Sites ->
Default Web Site" -> "
Properties". Идём в закладку "
Home Directory", нажимаем кнопку "
Configuration", выбираем "
Add". Путь к исполняемому файлу "
C:\PHP\php-cgi.exe", расширение "
.php", далее - два раза "
OK".
* В закладке "
Documents" добавляем новый вид заглавных страниц "
index.php" и кнопкой "
Up" поднимаем его на самый верх списка
* Правый клик на "
Web Service Extensions" -> "
Add new Service Extension". Кнопка "
Add", называем новое расширение "
PHP", прописываем к нему путь "
C:\PHP\php.exe" и ставим галку - "
Set extension status to allowed"
4) Установка и настройка MySQL 5.0.24
* Запускаем файл Setup.exe в архиве
mysql-5.0.24-win32.zip
* Далее по вкусу - кто выбирает "
Standart Settings" и не заморачивается с дополнительными настройками, а кто-то тыкает на "
Advanced Settings" и идёт читать мануал.
* После установки и преконфигурации MySQL сервера идём в консоль, авторизируемся, и даём команду на создание базы данных для вашего сайта:
mysqladmin create newDB. После сего вы должны получить ответ от консоли: "
Database newDB created!"
* Затем нам нужно создать пользователя, у которого будут права на работу только с это базой данных, это делается следующей командой в консоли:
GRANT ALL PRIVILEGES ON newDB.* TO 'user'@'localhost' IDENTIFIED BY 'password';
* Не знаю почему, но если завершить настройки на этом этапе, то MySQL будет ругаться и выдавать ошибку о том, что системе не удалось авторизироваться на сервере ввиду неизвестной системы аунтефикации. Чтобы этого избежать необходимо подсунуть базе данных пароли в старой системе шифрования командами:
SET PASSWORD FOR 'user'@'localhost' = OLD_PASSWORD('password'); UPDATE mysql.user SET Password = OLD_PASSWORD('password') WHERE Host = 'localhost' AND User = 'user'; для пользователя базы данных сайта и командами:
SET PASSWORD FOR 'root'@'localhost' = OLD_PASSWORD('root_password'); UPDATE mysql.user SET Password = OLD_PASSWORD('root_password') WHERE Host = 'localhost' AND User = 'root'; для суперпользователя.
* После этих процедур, желательно в файле
%systemdrive%/Program Files/MySQL/MySQL Server 5.0/my.ini: в поле
[mysql] изменить строчку "default-character-set=latin1" на "
default-character-set=cp1251" и добавить ниже
init-connect="SET NAMES 1251"
* Так же, если при выводе из базы данных русские символы отображаются в виде знаков вопроса (?????), то в начало каждого скрипта необходимо включить запрос
Читать далее...