Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

PHP для начинающих - N2


Информационный Канал Subscribe.Ru


PHP для начинающих Выпуск N2
В выпуске:
  1. Введение
  2. Установка PHP на локальный компьютер
  3. Пара слов о работе веб-сервера
  4. В следующем выпуске

Введение

Приветствую вас, уважаемые подписчики! Вот мы и встретились снова. В этом выпуске мы начинаем наше знакомство с PHP. Стартом послужит установка и настройка PHP на локальный компьютер, во время которой вы также познакомитесь с принципом работы веб-серверов и создадите собственный домашний сервер, на котором будет построена вся наша дальнейшая работа.

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


Установка PHP на локальный компьютер

Для того, чтобы установить PHP на свой компьютер, вам понадобиться некоторое программное обеспечение. Все ПО, которое мы будем использовать, совершенно бесплатно от рождения и доступно в сети для свободного скачивания. Это, согласитесь, хорошо, тем более, если учесть что бесплатных программ (тем более такого серьезного уровня) для Windows бывает очень немного. Также примечательно, что вам не придется скачивать пиратские программы и копаться в сети в поиске крэков/серийных номеров и т.п.

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

1. Веб-сервер Apache

Программа, которая исполняет функции http-сервера. Именно с ее помощью и будет функционировать веб-сервер. Эта программа исполняет все необходимые функции, под ее руководством работает большинство ресурсов сети. Наш не исключение, в силу гибкости и универсальности Apache мы будем использовать именно этот сервер. В дальнейшем вы увидите, насколько просто использовать эту программу в домашних условиях и насколько широкие возможности она предоставляет.
Загрузить Apache: http://www.apache.org/ (3 МБ)

2. Язык PHP

Непосредственно сам PHP, с которым мы будем работать. Именно эта программа даст вам возможность использовать PHP-скрипты на сайтах, созданных в рамках сервера Apache. В качестве версии я сразу выбираю PHP4, как наиболее перспективную и стабильную версию. Кроме того, эта версия содержит богатые возможности по сравнению с предыдущими, которыми мы также будем пользоваться в дальнейшем.
Загрузить PHP4: http://www.php.org/ (5 МБ)

Как видите, обе программы достаточно большие. Однако ничего с этим не поделаешь, тем более, что загрузив их один раз вы сохраните их надолго и сможете пользоваться ими в дальнейшем. Итак, если все загружено, можно переходить к установке.

Для работы сервера и всех наших дальнейших проектов целесообразно выделить отдельный диск на вашем компьютере. Конечно, вам не придется покупать новый винчестер, нам вполне хватит возможностей виртуального диска. Что такое виртуальный диск? Это имитация жесткого диска в системе. Если вы знакомы с возможностями MS-DOS, то уже поняли, что я имею в виду. Виртуальный диск имеет свое, отдельное имя в системе (например, диск F:) и в качестве своего корневого каталога использует обычный каталог на основном диске. Создается виртуальный диск следующей командой MS-DOS:

subst F: C:\server

Где F: - это имя виртуального диска, а C:\server - это папка на основном диске, которая и будет корневым каталогом нового диска F. Теперь давайте создадим новый диск. Для этого выполните следующие действия:

  • Создайте на диске C: папку "server".
  • Откройте в Windows меню "выполнить", которое находиться кнопке "Пуск" и наберите строчку "subst F: C:\server". При этом должно открыться окно с корневым каталогом вашего нового диска.
Обратите внимание, что как здесь, так и дальше я буду использовать именно диск F: в качестве сервера и папку C:\server в качестве корневого каталога этого диска. Я настоятельно советую вам использовать именно эти параметры, чтобы в дальнейшем не было путаницы. В следующих уроках я буду исходить из того, что у вас все настроено именно так.

Готово? Тогда давайте продолжим установку. Первое, что нам необходимо совершить - это установить веб-сервер Apache. Программа, которую вы загрузили (файл с именем apache_1_3_12_win32.exe) , является установщиком и сама копирует все необходимые файлы. Однако дальше не все так гладко и не достаточно будет просто завершить все шаги установки. Чтобы установить сервер именно так, как нам требуется, давайте действовать следующим методом.

Установка Apache

Запускаем файл apache_1_3_12_win32.exe. После запуска установщика нажимаем кнопку "NEXT" и "YES", пока не дойдет очередь до указания пути установки. По умолчанию записан путь "C:\Program Files\Apache Group\Apache". Это нас абсолютно не устраивает - нужно установить Apache на свежевыделенный диск F. Для этого нажимаем "Browse" и указываем путь "f:\usr\apache" (если такого каталога нет, система спросит нужно ли его создать, на что отвечайте утвердительно). Почему именно "F:\usr\apache"? Дело в том, что каталог "usr" на сервере является служебным, лежащим отдельно от каталогов, где размещаются файлы сайтов и прочие элементы сервера. Каталог "usr" на сервере - это вроде каталога "Windows\System" в Windows. Далее вы еще столкнетесь с этим каталогом при администрировании вашего сервера. Нажимаем "NEXT", выбираем "Typical" - обычная установка. Ждем еще пару раз "NEXT" и сервер наконец устанавливается на наш компьютер, выполняя копирование файлов. Все! Вы только что установили на свой компьютер свой персональный сервер, на котором можете создавать неограниченное количество сайтов с неограниченными возможностями.

Однако с созданием сайтов мы пока подождем. Перед этим нужно еще установить PHP и много чего настроить в параметрах вашего сервера. Это несложно - мы не будем сегодня углубляться в серьезные настройки Apache (это, кстати, тема для целой книги!), выполним лишь действия, необходимые и достаточные нам для полноценный работы домашнего сервера.

Установка PHP

Продолжим. Теперь нам нужно установить PHP. Вы имеете файл php-4.0.6-Win32.zip, загруженный с официального сайта PHP. Это уже не установщик - это обычный ZIP-архив. Создайте в том же каталоге "F:\usr\" папку "php" и разархивируйте его в получившийся каталог "F:\usr\php".

Теперь посмотрите содержимое каталога "F:\usr\php". Вы видите файл php.exe и наряду с ним папки ddl, extensions, java, Mibs и т.п.? Да? Отлично! Поздравляю, PHP готов исполнять ваши команды. Осталось только познакомить Apache с PHP - они, кстати, образуют отлично работающую пару.

Настройка сервера Apache и PHP

С установкой программ покончено. Теперь перейдем к их настройке. В первую очередь вам нужно найти файл "php.ini-dist" в каталоге "F:\usr\php" и скопировать его в папку C:\Windows, причем переименовать его на новом месте в файл "php.ini". В итоге у вас должен получиться файл "C:\Windows\php.ini". Оставим его как есть, ничего в нем не изменяя и перейдем к настройке Apache. Здесь все немного сложнее.

Открываем файл "F:\usr\apache\conf\httpd.conf" в каком-нибудь текстовом редакторе, например "Блокноте". Это очень важный файл, который содержит все настройки вашего сервера. В нем необходимо задать несколько параметров. Начнем.

1. Найдите в файле httpd.conf строчку "#ServerName new.host.name". Измените ее на строчку "Servername localhost". Обратите внимание, что знак "#" в начале строки убирается.

2. Далее найдите строчку "DocumentRoot "f:/usr/apache/htdocs" и измените ее на "DocumentRoot "f:/project/www". Обратите внимание на _отсутсвие_ слеша вконце.

3. Теперь найдите строчку "<Directory "f:/usr/apache/htdocs">" и измените ее на "<Directory "f:/project/www">. Слэш опять отсутсвует.

4. Также найдите и измените строку "ErrorLog logs/error.log" на строку "ErrorLog F:/project/logs/error.log" и строку "CustomLog logs/access.log common" на "CustomLog F:/project/logs/access.log common".

5. Теперь перейдите в самый конец файла httpd.conf и впишите в него такие строчки:

ScriptAlias /php/ "f:/usr/php/"
AddType application/x-httpd-php .php .phtml .php4
Action application/x-httpd-php "/php/php.exe"

Эти строчки добавляют в настройки Apache возможность выполнения файлов с расширением .php, .phtml или .php4 как программ, написанных на PHP (php скриптов).

6. Ну а теперь создайте каталог "F:\project", и в нем два каталога "www" и "logs". В итого вы должны получить такое дерево каталогов:

F:\project
F:\project\www
F:\project\logs

Все! Поздравляю, вы установили и настроили полноценный http-сервер с поддержкой PHP. Теперь дело за малым - научиться включать и выключать сервер, а также немножко его протестировать. Этим мы и займемся далее.

Работа с сервером Apache

При инсталляции сервера программа установки создала в Главном меню (Кнопка "Пуск", далее "Программы") папку "Apache Web Server". В этой папке находиться несколько ярлыков. Нам потребуются следующие из них:

Start Apache - для запуска сервера
Stop Apache - для остановки сервера

При желании вы можете скопировать их на Рабочий стол, чтобы иметь возможность быстро запускать и выключать сервер.

Двигаемся далее и подходим к самому главному моменту - запуску сервера. Если вы произвели все указанные действия, то этот этап Вы точно преодолеете без проблем. Но перед запуском я хотел бы предложить вам сделать еще кое-что, чтобы наверняка протестировать работу вашего сервера.

Итак, создайте в папке "F:\project\www\" файл с именем "index.html" следующего содержания:

<html>
<head><title>Главная страница сервера</title></head>
<body bgcolor=#ffffff>
Поздравляю Вас, сервер работает!<br>
Протестируйте PHP: <a href="test.php">test.php</a>
</body>
</html>

Создайте там же файл с именем "test.php" такого содержания:

<?
echo phpinfo();
?>

Вот и все, наконец-то можно запускать сервер. Торжественно запускаем ярлык Start Apache. При этом открывается черное окошко вроде окна MS-DOS с единственной надписью "Apache/1.3.12 (Win32) running...". Это означает, что сервер успешно запущен и на данный момент работает. Окошко закрывать не нужно, оно является рабочей средой Apache и закрывается с помощью ярлыка "Stop Apache", который и выключает сервер.

Итак, сервер запущен. Что дальше? Открывайте ваш броузер и набирайте в нем адрес "http://127.0.0.1". Помните, подключаться в этот момент к Интернету не нужно! (Мало ли, вдруг кому-нибудь это придет в голову :) ). Вы должны увидеть уже набранное приветствие, т.е. код файла "index.html". Перейдите по ссылке, ведущей к файлу "test.php". Что вы видите? Броузер должен вывести довольно большой файл с кучей различных обозначений и гордым заголовком "PHP Version 4.0.6" вместе в логотипом PHP. Это - результат работы нашего маленького скрипта "test.php", а точнее функции phpinfo(), которую мы в нем написали. Эта функция выводит все параметры PHP, установленного в системе.

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

Отдельно хочу обратиться к продвинутым пользователям, которые, я уверен, читают (или будут читать) мою рассылку. В первую очередь - если вы не удовлетворены количеством информации (и объяснений к ней) по поводу настройки Apache и различных директив PHP - не стоит меня сильно в этом обвинять. Моей целью в этой статье было предоставить новичкам стартовую площадку для их обучения и первого проекта. Можете быть уверены, дальше мы займемся более глубоким изучением работы веб-сервера.

Чтож, с установкой все. Если у вас что-то не получилось запустить или незаладилась установка, смело пишите мне по адресу dmitry@eserver.ru, я всегда рад вашим письмам и с радостью отвечу на любые вопросы.


Пара слов о работе веб-сервера

Вы установили и настроили веб-сервер. Что же это такое, почему теперь можно обращаться к адресу "127.0.0.1" и даже не подключаться к Интернету? Я уверен, новички зададутся и этими вопросами и многими другими. Здесь я хочу немножко объяснить принцип работы веб-серверов и более подробно рассказать о структуре сайтов в сети.

Вы наверняка знаете, что когда вы набираете адрес в строке броузера, то вы работаете по протоколу http (hypertext transfer protocol - протокол передачи гипертекста). Это понятно хотя бы по строке адреса - она имеет вид вроде http://www.адрес.ru.

Что же такое протокол? Это набор команд, с помощью которых общаются ваш компьютер (конкретно ваш броузер) и веб-сервер, к которому вы обратились. Для создания сайтов очень важно понимать этот момент.

А что представляет собой веб-сервер? В первую очередь это компьютер, на котором установлено программное обеспечение, дающее возможность передавать информацию вам при запросе ее вашим броузером. Это программное обеспечение и есть установленный сегодня нами Apache, который просто умеет работать по протоколу http. Когда вы запускаете Apache, в вашей системе появляется кто-то, кому есть что ответить броузеру при запросе им конкретного адреса. То есть получается, что вы имеете сервер, на котором храниться сайт (или сайты) и ПО, которое умеет эти сайты передавать броузеру. Вот и общаются они между собой на языке (протоколе) http - броузер и Apache. Броузер запрашивает у Apache файлы, а Apache их ему отдает.

Теперь о том, каким образом выглядят сайты на нашем сервере, корневым каталогом которого является диск F: и по совместительству папка C:\server. Сайты на сервере хранятся в упорядоченном виде, каждый в отдельном каталоге. В нашем случае сайт, который открывается по адресу "http://127.0.0.1" имеет в качестве корневого каталога "F:\project". Каталог может называться как угодно и является корневым каталогом для этого сайта. Имена каталогов и их соответствие http-адресам записываются в файле конфигурации Apache - "httpd.conf", который мы сегодня редактировали. Чтобы это понять, представьте, что можно создать каталог "F:\site" и записать в файле "httpd.conf" что это самый настоящий сайт и он должен открываться по адресу "http://127.0.0.2". И это будет работать. (Как это сделать мы изучим позже).

Обычно в корневом каталоге сайта есть еще несколько каталогов - для хранения html файлов (это наш каталог www), для хранения файлов статистики обращений к сайту (это каталог logs) и другие, пока нами по небольшой надобности неиспользуемые (например папка cgi-bin для хранения программ, написанных на языке PERL). Так вот, папка которая умеет хранить html-странички, т.е. наша папка www может также содержать и php-программы. То есть все, что положить в эту папку и будет видно по адресу "http://127.0.0.1". Это значит, что если вы создадите файл "F:\project\www\page.html", то вы его увидите по адресу "http://127.0.0.1/page.html". Создав каталог "F:\project\www\katalog", вы сможете посмотреть на него по адресу "http://127.0.0.1/katalog/".

Кроме того, каждый каталог на сервере может иметь т.н. "индексный файл". Это файл, который открывается по умолчанию при вызове каталога, т.е. без явного указания имени файла. В нашем случае это index.html, который находиться в корневом каталоге сервера. Набирая "http://127.0.0.1" мы видим именно этот файл. Соответственно, можем также увидеть его, набрав "http://127.0.0.1/index.html".


В следующем выпуске

На сегодня все. Надеюсь, этот выпуск был вам полезен. В любом случае, мы сделали очень многое - познакомились с работой веб-сервера, а самое главное - установили и настроили свой домашний сервер. Именно это и послужит точкой старта для всей нашей дальнейшей работы. Сейчас вы имеете полноценный сервер с адресом "http://127.0.0.1" и папкой "f:\project\www". Относительно этого сервера мы теперь будем действовать и на нем будем тестировать все примеры.

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

Буду рад вашим письмам с вопросами, пожеланиями и предложениями. Напомню мой адрес: dmitry@eserver.ru, пишите!

С уважением, Дмитрий.

Ведущий рассылки: Дмитрий. dmitry@eserver.ru

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное