На написание этой небольшой, в общем-то, статейки, меня натолкнули вопросы на форуме ПротоПлекса. Описав настройку локального сервера small HTTP, я совершенно упустил из вида, что локальный сервер и интерпретатор языка при написании и отладке скриптов настолько тесно взаимодействуют друг с другом, что понимание настроек одного невозможно без понимания опций другого.
И именно по этой причине в этой статье я буду уделять больше внимания не установке, а именно конфигурированию PHP с помощью файла php.ini, в котором и содержатся все настройки, причем именно "под" small HTTP Server.
Но начнем мы все-таки со скачивания и инсталляции самого интерпретатора.
В первую очередь заглянем на официальную страничку PHP, в раздел Downloads - http://www.php.net/downloads.php. Можно скачать два варианта интерпретатора - просто установочный пакет (1 Мб) и интерпретатор, включающий в себя все необходимые библиотеки (5, 5 Мб). Так как я качал сокращенную, 1-мегабайтовую версию, то и описывать буду именно ее настройку... :) Впрочем, если вы скачиваете полную версию PHP, не волнуйтесь - основные настройки совершенно одинаковые. Одно замечание: если у вас установлена ОС Windows (а именно под ней описывается настройка PHP в этой статье), не ошибитесь, и не скачайте Linux-архив. Скачивайте архив, находящийся в категории Windows Binaries.
Предположим, что так необходимый нам файл уже лежит у нас на жестком диске... И поэтому перейдем, собственно, к процессу установки.
Естественно, принимаем лицензионное соглашение :). А вот дальше начнутся куда более серьезные опции.
На экране Type of Installation выбираем режим Advanced. Ведь мы собрались полностью вручную конфигурировать PHP, не так ли?
Далее выбираем папку, куда требуется установить интерпретатор. Поверьте, это вовсе не обязательно должна быть директория C:PHP.
На следующем экране нас спросят, нужно ли создавать копию всех заменяемых файлов? Лучше ответить Да, так как файлы бэкапа монут понадобиться при деинсталляции PHP и "возврате все на круги своя". Папку для резервных копий файлов оставляем ту, что стоит по умолчанию.
Следующие два экрана задают папки для загружаемых и временных файлов. Для чего это нужно, вы поймете в процессе изучения и программирования на PHP, а пока лучше оставить эти настройки "как есть", ничего не меняя в них.
Далее настраиваем адрес вашего локального сервера. С этим параметром, кстати, работает и small HTTP Server. По умолчанию предлагается localhost, т.е. для запуска своих скриптов на локальной машине вам придется вводить в адресную строку браузера примерно следующее: http://localhost/yourscript.php. Собственно, в этом поле можете ввести такой адрес, который вам удобен. Полем ниже указываем "локальный e-mail". С этой настройкой также работает small HTTP, а нужна она для корректной работы функции sendmail() на вашей машине. С этой функцией вы также разберетесь во время программирования на PHP.
Следующий экран - Error reporting level. Здесь выбираем уровень "паранойи" PHP, т.е. детальность сообщений об ошибках. Из трех вариантов советую выбрать Display all errors (Показывать все ошибки). В этом случае интерпретатор будет сообщать вам о всех "нестыковках" и неточностях в ваших скриптах, что очень важно при их разработке и отладке.
И, наконец, можно сказать, главная настройка - Server Type (Тип сервера). В стандартных, автоматически конфигурируемых серверах числятся Microsoft PWS (Personal Web Server), IIS, Apache и несколько более "экзотических". :) Но мы же с вами договаривались, что конфигурируем PHP под small HTTP Server, который здесь в числе стандартных не указан. Следовательно, выбираем "None (or other server) - I will configure the web server manually" (Нет (или другой сервер) - я буду настраивать веб-сервер вручную). (Статью о настройке small HTTP Server можно прочитать здесь.
Теперь, когда установка PHP полностью завершена, строго рекомендую ассоциировать интерпретатор со всеми скриптами и phtml-страницами.
И, наконец, перейдем, собственно, к самому файлу настройки - php.ini.
Обычно он находится в папке WINDOWS, поэтому найти его на жестком диске не составляет труда. В принципе, это часть статьи будет самой короткой, т.к. нам требуется подправить всего два ключа. Зато если их не исправить, увы, ничего работать не будет... Поэтому смело беремся за правое дело! :)
1) Снимаем защиту исполнения CGI. Находим строчку cgi.force_redirect=1 и меняем значение на 0. Теперь при выполнении скриптов мы будем видеть результат, а не предупреждение интерпретатора о безопасности...
2) Включаем возможность передачи переменных из форм. По умолчанию интерпретатор не способен принимать/отправлять значения из форм. Но... Конечно же, это дело поправимо. В том же файле php.ini находим строчку register_globals=Off и значение Off меняем на On. Проблема решена! Теперь вы не будете постоянные надписи типа "Неопределенная переменная". Можете начинать работу!
Следует помнить, что перед вышеуказанными строками не должно стоять точки с запятой, в противном случае они будут считаться комментариями!
Накопив немного опыта программирования на PHP, вы можете сами эксперементировать над файлом php.ini. Но сильно не увлекайтесь - дело может закончится переустановкой интерпретатора и конфигурированием его "по новой".
Надеюсь, эта статья смогла разрешить хотя бы некоторые из ваших вопросов. Если они у вас все же остались - делитесь своими проблемами в форуме! Мы всегда рады вам помочь!