Pers.narod.ru. PHP. Статьи. Установка последних версий PHP, MySQL и PHPMyAdmin под Windows 7 |
Старая статья здесь. Всё написанное ниже имеет смысл для Windows 7 Professional, где есть нужные серверные компоненты. Если у Вас "недочеловеческая" версия, какой-нибудь Starter или Home Edition, то либо поставьте Professional, либо поищите другие решения, скажем, Denwer.
1. Установить службу IIS (сервер) в Windows 7. Для этого идём Пуск, Панель управления, Программы, Включение или отключение компонент Windows, открываем список Службы IIS, далее вложенный список Средства управления Web-сайтом, включаем Консоль управления IIS и Службу управления IIS. Мдя, там же проверьте, включена ли галочка Службы IIS - Службы Интернета - Компоненты разработки приложений - CGI. Должна быть включена. Ну и все остальные галочки из списка "Компоненты разработки приложений" тоже включите.
2. Включаем в меню Пуск компоненту "Администрирование": правая кнопка "мыши" на кнопке Пуск, Свойства, вкладка меню Пуск, кнопка Настроить..., для элемента "Администрирование" выбрать Отображать в меню "Все программы" и "Пуск", подтвердить кнопкой ОК, затем Применить.
3. Установить полный доступ на папку c:\Inetpub\wwwroot
для пользователей IIS_WPG
и IIS_IUSRS
.
Детально: в окне Компьютер щёлкаем правой кнопкой мыши на папке wwwroot, Свойства, вкладка Безопасность, находим в списке Группы или пользователи записи IIS_WPG
и IIS_IUSRS
, для каждой из них ставим разрешения на полный доступ. После установки флажка доступа нажимаем кнопку Дополнительно, в новом окне кнопку Изменить разрешения, а в очередном окне "Дополнительные параметры безопасности для wwwroot" ставим флажок Заменить все разрешения дочернего объекта на разрешения, наследуемые от этого объекта, после чего кнопка Применить и Да в окне подтверждения.
Если какого-то из указанных пользователей нет в свойствах папки wwwroot
, делаем так: кнопка Изменить на вкладке Безопасность, в новом окне кнопка Добавить, в следующем окне кнопка Дополнительно, в следующем окне кнопка Поиск. Затем двойной щелчок по нужному пользователю в списке Результаты поиска и кнопка ОК в окне Выбор: "Пользователи" или "Группы".
4. Поставить в Диспетчере служб IIS "Документы по умолчанию" с именами index.html
и index.php
.
Кнопка Пуск, Администрирование, Диспетчер служб IIS, значок Документ по умолчанию, доступные Действия справа. Желательно первым в списке поставить имя index.php
, вторым - имя index.html
5. Установить PHP для Windows, я обычно по привычке ставлю в папку c:\PHP
, хотя это необязательно, настройки компонент можно оставить по умолчанию,
тип сервера - FastCGI, если в этом месте ругается, ищите, каких компонент не хватает в Винде.
6. Проверить, что в настройках Диспетчера служб IIS - "Сопоставления обработчиков" для типа *.php
назначен обработчик php-cgi.exe
(имя обработчика - PHP_via_FastCGI) с доступом на выполнение сценариев (кнопка Ограничения запроса).
7. Установить MySQL под Windows, по окончании установки в ответ на запрос выбрать детальную настройку конфигурации, кодовая страница cp1251
(Кириллица Windows), выберите её через список "Manual Selected Default Character Set..." на одном из шагов установки, имя пользователя и пароль можно поставить root
, всё остальное оставляем по умолчанию. После настройки Configuration Wizard запустит сервис и скажет, что всё ОК.
8. Архив ZIP с приложением PHPMyAdmin извлекаем в папку c:\inetpub\wwwroot
, там должна появиться вложенная папка, я обычно переименовываю её так, чтоб она называлась просто PHPMyAdmin
.
Приходилось сталкиваться и с тем, что Windows 7 отказывает администратору в создании папки внутри wwwroot
. Не волнуйтесь, а просто поменяйте соответствующему пользователю права на "полный доступ" (как написано в п. 3).
9. Проверить, что в браузере ссылка http://127.0.0.1/phpmyadmin
работает, при первом запуске PHPMyAdmin логин и пароль установить root
10. Проверить работу системы на тестовом файле
<?php phpinfo(); ?>
Чтобы это сделать, достаточно скопировать листинг в файл c:\Inetpub\wwwroot\index.php
и потом
набрать в браузере http://127.0.0.1
Должна появиться системная информация о PHP со всеми текущими настройками.
Немного о настройках PHP |
К сожалению, в PHP 5.3.X целый ряд функций объявлен устаревшими, в том числе, широко применяемые методы
session_register()
, magic_quotes_runtime()
и т.д. Что ещё хуже,
теперь по умолчанию нельзя использовать "стиль разработчиков" <? Код PHP ?>
в самом теге PHP! Вместо него нужно указывать
"стиль XML" <?php Код PHP ?>
. Так что, в случае чего, для "слишком новых" версий PHP во всех
файлах с кодом нужно заменить строку <?
на <?php
или же установить в файле конфигурации php.ini
директиву
short_open_tag = On
Вам вообще не раз придётся менять те или иные настройки PHP с помощью директив этого файла. Так, многие старые скрипты требуют работы с глобальными переменными (устарело и опасно!) Такая поддержка включается директивой
register_globals = On
- но лучше сразу привыкать писать на PHP без слова global
.
Чтобы Ваш скрипт мог закачивать файлы, нужно настроить секцию
[File Uploads]
:
;Разрешаем закачку файлов file_uploads = On ;Временная директория - она должна существовать и иметь правильные ;настройки прав - см. п. 3 upload_tmp_dir = C:/PHP/uploadtemp ;Максимальный размер закачиваемого файла upload_max_filesize = 2M
Кстати, с символов ;
в файле php.ini
начинаются комментарии, там очень подробно
расписано, какая настройка эа что отвечает.
Символы апострофа '
и кавычки "
являются служебными для PHP и одна из
традиционных проблем скриптов - обработка этих символов, встречающихся в
пользовательских данных. Здесь PHP-программист немало мучается с настройками
"магических кавычек", я лично неоднократно применял функцию magic
вот отсюда,
а в данный момент у меня в php.ini
стоят такие настройки кавычек:
magic_quotes_gpc = On magic_quotes_runtime = Off magic_quotes_sybase = Off
А ещё лучше выключить все 3 директивы - с решением по последней ссылке скрипт всё равно должен остаться работающим.
Настройки пользовательских сессий из секции [Session]
лучше не трогать, единственное, что нужно проверить - существование
папки из настройки session.save_path
и права на неё.
Файл php.ini
следует переместить в папку Windows
- иначе могут быть проблемы с рядом скриптов.
Наконец, для подключения к PHP внешних модулей, они должны быть правильно
прописаны в секции [Dynamic Extensions]
:
extension=../php/ext/php_gd2.dll
Здесь библиотека динамического создания изображений
php_gd2.dll
подключена из файла
c:\WINDOWS\php.ini
- отсюда и относительный путь от
php.ini
до папки расширений
c:\php\ext
. Если путь c:\php\ext
внесён в
системную переменную PATH
, запись могла иметь вид и просто
extension=php_gd2.dll
Ссылки от разработчиков, где можно скачать весь указанный софт в последних версиях:
Скачать PHP (ссылка для Windows)
К вопросу о Denwer'е |
Вы можете спросить - а зачем всё это нужно, ведь есть "Денвер", который поставит всё сразу! Увы, оснований сделать всё самому достаточно:
Тем не менее, Denwer - неплохое решение для ленивых, если Вам повезёт, он даже будет работать :)
гостевая; E-mail |