Установка в Windows 95/98/NT/Me/2000/XP



Если вам когда-нибудь приходилось устанавливать новые приложения в операционной системе Windows, вероятно, это не вызывало у вас особых трудностей. Вы щелкаете на нескольких кнопках, отвечаете на несколько вопросов — и все готово. Так же обстоит дело и с установкой Apache и РНР на компьютерах с системой Windows.

  1. Дважды щелкните на значке исполняемого файла Apache. Запускается процесс установки, и на экране появляется начальное окно программ мастера (wizard) установки. Внимательно прочитайте текст лицензионного соглашения и подтвердите его.
  2. Мастер запрашивает каталог для установки и предлагает вариант по умолчанию (C:\Program Files\Apache Group\Apache). Возможно, вам захочется сократить его до C:\Apache — решайте сами.
  3. Затем вам будет предложено указать имя, под которым программа будет находиться в меню Пуск (Start). Введите имя по своему усмотрению или подтвердите предложенный вариант.
  4. Следующий вопрос относится к типу установки. Выберите вариант Typical (Стандартная установка). После того как решение будет принято, выполняется установка.
  5. На следующем шаге редактируется файл httpd.conf, находящийся в подкаталоге conf каталога, указанного на шаге 2. Откройте файл в текстовом редакторе и найдите строку ServerAdmin yourname@yoursite.com

Замените yourname@yoursite.com правильными данными. Затем укажите правильное имя сервера (если его нет, воспользуйтесь именем localhost):

ServerName localhost

  1. Запустите Apache и убедитесь в том, что все работает правильно. Конкретные действия зависят от того, в какой системе вы работаете.

Если вы используете Windows NT, выберите в меню Пуск (Start) команду Install Apache as Service (NT Only). Затем вызовите панель управления, откройте окно Службы (Services), выберите Apache и щелкните на кнопке Пуск (Start). Apache запускается и будет запускаться автоматически при каждой последующей загрузке системы.

  1. Запустите браузер, установленный на сервере, и введите адрес http: /local host/. В окне открывается страница с сообщением о том, что установка была выполнена успешно.
  2. Следующий этап — установка РНР. Перейдите в каталог, где находится пакет РНР, и распакуйте его в произвольный каталог.
  3. Перейдите в каталог, в который были помещены распакованные файлы, и найдите в нем файл php.ini-dist. Переименуйте его в php.ini и переместите в каталог C:\Windows.
  4. Вернитесь в каталог РНР и найдите два других файла, php4ts.dll и Mscvrt.dll. Поместите эти файлы в каталог C:\Windows\System\. Возможно, файл Mscvrt.dll уже существует — если вам будет предложено его перезаписать, не соглашайтесь.
  5. Вернитесь к файлу Apache http.conf и откройте его в текстовом редакторе. Необходимо внести еще несколько изменений. Найдите строку

ScriptAlias /cgi-bin/ "C:/Apache/cgi-bin/"

Непосредственно под этой строкой введите следующую:

ScriptAlias /php5/ "C:/php5/"

Найдите секцию AddType. Вы увидите две закомментированные строки:

#AddType application/x-httpd-php3. phtml

#AddType application/x-httpd-php3-source .phps

Непосредственно под этими строками добавьте следующие:

AddType application/x-httpd-php .phtml .php

AddType application/x-httpd-php-source .phps

Прокрутите содержимое файла и найдите следующий закомментированный фрагмент:

#

# Action lets you define media types that will execute a script whenever

# a matching file is called. This eliminates the need for repeated URL

# pathnames for oft-used CGI file processors.

# Format: Action media/type /cgi-script/location

# Format: Action handler-name /cgi-script/location

#

Добавьте под этим фрагментом следующую строку:

Action application/x-httpd-php /php4/php.exe

  1. РНР и Apache готовы к работе.

Для проверки сохраните приведенный ниже фрагмент в файле phpinfo.php в корневом каталоге документов Apache — каталоге htdocs. Он находится в том каталоге, который был указан на шаге 2:

<?

phpinfo();

?>

Хотя при успешном завершении действий, описанных выше, вы сможете использовать web-сервер и РНР для тестирования, это еще не значит, что ваш web-сервер будет доступен из World Wide Web. Более того, хотя описанная процедура позволяет работать с пакетом РНР, вероятно, вы захотите изменить конфигурацию РНР так, чтобы она лучше соответствовала вашим потребностям. Эта тема рассматривается в следующем разделе «Конфигурация РНР».

Откройте файл в браузере на сервере — в окне появляется длинный перечень сведений о конфигурации РНР.

Конфигурация РНР

РНР будет правильно работать и при конфигурации, выбранной по умолчанию, однако вы можете внести некоторые изменения, чтобы работа пакета лучше соответствовала вашим целям. Все параметры конфигурации находятся в файле php.ini, который по умолчанию копируется в каталог /usr/local/lib/ в процессе установки.

Независимо от платформы и web-сервера, используемого в сочетании с РНР, файл php.ini содержит одинаковый набор стандартных параметров, позволяющих управлять важными аспектами работы РНР. Этот файл содержит все параметры, определяющие поведение пакета при выполнении сценария РНР. Содержимое файла php.ini читается при запуске РНР.

В версии 3.0 файл конфигурации назывался php3.ini, но в версии 4.0 ему было присвоено имя php.ini.

 

Общие параметры конфигурации

Подробное описание всех конфигурационных параметров выходит за рамки этой книги, но некоторые директивы используются особенно часто и заслуживают отдельного упоминания. Другие параметры упоминаются в соответствующих местах следующих глав.

short_open_tag [on | off]

Параметр short_open_tab [on | off] определяет возможность использования коротких тегов <?...?> наряду со стандартными тегами.

asp_tags [on | off]

Параметр asp_tags [on | off] определяет возможность использования тегов в стиле ASP наряду со стандартными тегами. При использовании тегов в стиле ASP фрагменты кода РНР оформляются следующим образом:

<%

print "This is РНР code.";

%>

precision [integer]

Параметр precision [integer] задает количество значащих цифр, отображаемых в вещественных числах.

safe_mode [on | off]

Безопасный режим особенно удобен в случае, если в вашей системе работают несколько пользователей. Включение безопасного режима гарантирует, что пользователь не сможет применить сценарий РНР для получения доступа к другому файлу в системе — например, файлу passwd на компьютере Linux. Параметр safe_mode работает только в CGI-версии РНР. За дополнительной информацией по этой теме обращайтесь к главе 16.

max_execution_time [integer]

Параметр max_execution_time [integer] определяет максимальную продолжительность выполнения сценариев РНР в секундах. Такое ограничение предотвращает поглощение ценных системных ресурсов сценариями, содержащими ошибки.

error_reporting [1-8]

Параметр error_reporting [1-8] определяет уровень выдачи сообщений об ошибках в РНР. Чем выше значение, тем «чувствительнее» РНР реагирует на ошибки.

Значение Чувствительность
1 Обычные ошибки
2 Обычные предупреждения
4 Ошибки лексического анализатора
8 Замечания

display_errors [on | off]

Параметр display_errors[on | off] управляет выводом информации об ошибках в браузере.

log_errors

Параметр log_errors определяет, следует ли регистрировать ошибки в файле. При включении параметра log_errors файл, в котором регистрируются ошибки, назначается при помощи параметра error_log.

error_log [filename]

Параметр error_log определяет файл, в котором регистрируются ошибки при включенном параметре log_errors.

magic_quotes_gpc

При активизации параметра magic_quotes_gpc все специальные символы, содержащиеся в пользовательских данных или в базе, автоматически экранируются обратной косой чертой. Кстати, сокращение gрс означает «get/post/cookie».

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

track_vars

Параметр track_vars включает отслеживание нескольких важных массивов сеансовых переменных, в том числе $HTTP_GET_VARS[], $HTTP_POST_VARS[], $HTTP_POST_FILES, $HTTP_COOKIE_VARS[], $HTTP_ENV_VARS[] и $HTTP_SERVER_VARS[]. Эти массивы подробно описаны в главе 13.

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

Основные конструкции РНР

Прежде чем переходить к изложению основного материала, занимающего оставшуюся часть книги, представляется несколько вспомогательных концепций, относящихся к РНР.

Переход в РНР

Механизм лексического анализа должен как-то отличать код РНР от других элементов страницы. Идентификация кода РНР называется «переходом в РНР» (escaping to РНР). Существуют четыре варианта оформления перехода в РНР:

  • стандартные теги;
  • короткие теги;
  • теги script;
  • теги в стиле ASP.

Стандартные теги

Стандартные теги используются программистами РНР чаще остальных способов, что объясняется наглядностью и удобством этой формы записи:</P>

<?php print "Welcome to the world of PHP!": ?>

У стандартных тегов есть еще одно дополнительное преимущество: за открывающей конструкцией <? следуют символы php, однозначно определяющие тип дальнейшего кода. Это удобно при использовании в одной странице нескольких технологий — таких, как JavaScript, серверные включения и РНР. Весь текст, расположенный до закрывающего тега ?>, интерпретируется как код РНР.

Короткие теги

Короткие теги обеспечивают наиболее компактную запись для перехода в РНР:

<? print "Welcome to the world of PHP!"; ?>

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

  • указать ключ -enable-short-tags при компиляции РНР;
  • включить параметр short_open_tag в файл php.ini.

Теги script

Некоторые текстовые редакторы ошибочно принимают код РНР за код HTML (то есть визуально отображаемый текст), что нарушает работу над web-страницей. Проблема решается использованием тегов script:

<script language="php">

<?php print "Welcome to the world of PHP!"; ?>

</script>

Теги в стиле ASP

Четвертый и последний способ оформления внедренного кода РНР — теги в стиле ASP (Active Server Page). Они похожи на короткие теги, описанные выше, однако вместо вопросительного знака используется знак процента (%):

<%php print "Welcome to the world of PHP!"; %>

У тегов в стиле ASP есть одна особенность, делающая запись более компактной. Во внедренный код РНР не обязательно включать команду print — знак равенства (=), расположенный сразу же после открывающего тега в стиле ASP, приказывает лексическому механизму РНР вывести значение указанной переменной:

<%=$variable %>

Этот удобный стиль позволяет использовать в страницах фрагменты вида

<%

// Присвоить значение переменной $recipe

$recipe = "Lasagna":

%>

Luigi's favorite recipe is <%=$recipe;%>

Этот фрагмент содержит два разных сценария РНР. В первом сценарии переменной $recipe присваивается значение "Lasagna". Позднее, когда потребуется вывести значение $гесiре, специально для этой цели используются теги в стиле ASP. Кстати, такая возможность существует и для коротких тегов (<?...?>).

Внедрение HTML в код РНР

Одной из самых замечательных особенностей HTML является простота использования в сочетании с другими языками — например, HTML и JavaScript

<html>

<head>

<title>Basic PHP/HTML integration</title>

</head>

<body>

<?

// Обратите внимание на присутствие тегов HTML в команде print.

print "<h3>PHP/HTML integration is cool.</h3>";

?>

</body>

</html>

В данном примере в код РНР включаются теги заголовка третьего уровня (<h3>...</h3>). В итоговом документе эти теги ничем не отличаются от обычного кода HTML.

В листинге 1.3 продемонстрировано включение динамической информации в web-страницу на примере вывода текущей даты в заголовке окна

Листинг 1.3. Динамический вывод даты

<title>PHP Recipes | <? print (date("F d, Y")); ?></title>

Простая функция РНР date() форматирует дату одним из нескольких стандартных способов. Отформатированная дата вставляется в заголовок окна.

РНР также позволяет изменять формат конструкций HTML — для этого соответствующая характеристика тега присваивается переменной, вставляемой в файл. В листинге 1.4 эта возможность продемонстрирована на примере присваивания характеристики шрифта (h3) переменной $big_font и ее последующего использования при выводе текста.

Листинг 1.4. Динамические теги HTML

<html>

<head>

<title>PHP Recipes | <? print (date("F d, Y")); ?></title>

</head>

<?

$big_font = "h3";

?>

<body>

<? print "<$big_font>PHP Recipes</$big_font>"; ?>

</body>

</html>

Листинг 1.4 представляет собой разновидность листинга 1.3 — на этот раз тег заголовка (<h3>...</h3>) сначала присваивается переменной, а затем эта переменная используется в команде print. В итоговом документе эти теги ничем не отличаются от обычного кода HTML.


Дата добавления: 2018-06-01; просмотров: 181; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!