Ускоритель Интернета! Бесплатно!

Поставь себе Marketscore!
Поставь!

Marketscore - хит сезона!
Сервис, практически вдвое увеличивающий скорость загрузки вашим браузером страниц и сайтов в Интернете. В среднем, скорость загрузки вэбстраниц с графикой и текстом ускоряется на 75%. 
Особенно заметен выигрыш, если у вас медленный модем или вы выходите в Интернет на маленьких скоростях (до 56 Кб/сек).
Подробнее...
Если вы видите здесь эту рекламу, значит увидят и вашу рекламу...

Сервер племени апачей. Продолжение

Артем Cosmic Шманцырев

Итак, одинокий индейский вождь ведет свое племя по Синайской пустыне. Ой, нет, это из другой оперы… :-) Это мы ведем нашего «индейского вождя» по пути окончания настройки. К чему мы его приведем, вы узнаете в этой статье.

В результате прочтения предыдущей статьи ваш компьютер обзавелся собственным «индейским вождем» — сервером Apache. Мы уже настроили его для работы с вашими HTML-документами, вы уже можете использовать SSI и выполнять некоторые CGI-скрипты. Но это еще далеко не все.

Для начала давайте разберемся, что мы хотим от сервера. В принципе, его текущая настройка удовлетворяет большинству требований, которые предъявляются к динамическим сайтам. Сервер уже может корректно обрабатывать HTTP-запросы, вложенные SSI-инструкции и CGI-скрипты, написанные на большинстве языков программирования. Но нам этого недостаточно, мы хотим выжать из него максимальную простоту использования и скорость выполнения. Современные языки программирования, на которых пишутся CGI-скрипты, отличаются либо сложностью в изучении и применении, либо низкой скоростью обработки данных. В большинстве случаев их возможностей оказывается достаточно, ведь мы не планируем делать поисковик типа Google или мэйл-сервер типа Mail.ru :-). Хотя могли бы… Но к чему это я? А к тому, что среди всех доступных языков, на которых пишется CGI, максимальной простотой и скоростью обладает PHP.

PHP (читается «пи-эйч-пи») — это C-подобный язык программирования, инструкции которого, подобно SSI, встраиваются в текст HTML-страницы и, как и любые другие СGI-инструкции, выполняются на сервере, возвращая клиенту результат своей работы. Статистика показывает, что PHP по популярности стоит на втором месте после Perl’а и, благодаря своей простоте и огромному количеству встроенных функций, имеет виды на повышение. Ну что, убедил? Тогда немного истории.

PHP (Personal HomePage Tools) начал свое существование как простая альтернатива Perl-транслятору, написанная Расмусом Лердорфом (Rasmus Lerdorf) для нужд собственного сервера. Имея все возможности Perl’а, обладая значительно более простым синтаксисом и возможностью работы с базами данных посредством SQL-запросов, PHP быстро завоевал популярность. Сейчас PHP — это более 2000 встроенных функций, позволяющих делать с HTML-страницей все, что душе угодно :-). Нравится? Если нравится, переходим к практике.

PHP — это абсолютно бесплатный пакет, доступный для скачивания на сайте http://www.php.net/downloads.php. В зависимости от версии и количества надстроек размер пакета может варьироваться от 800 Кб до 4-5 Мб. Нам нужна версия 4.2.0 и выше. Как всегда, запасаетесь дискетами, идете в клуб и скачиваете, скачиваете, скачиваете… :-) Скачали? Теперь устанавливаем.

На созданном для сервера диске F: создадим папку f:\usr\local\php. Установочный пакет может быть в виде архива или EXE-файла установки. В любом случае, разархивируете/устанавливаете PHP в созданную папку. Теперь берем за руку нашего неопытного вождя и направляем его конфигурационный файл httpd.conf в текстовый редактор :-). В этом файле находим строчку Port 80 и ПЕРЕД ней вставляем следующие строки:

Все! PHP теперь готов к сотрудничеству с нашим индейским вождем :-). Для проверки работоспособности PHP создадим в папке f:\www файл с именем proba.phtml и с помощью текстового редактора запишем в него такую строчку:

Теперь запускаем сервер, открываем браузер и в адресной строке вводим http://www.mycomp.com.ua/proba.phtml. Если вы все правильно настроили, в браузере должно отобразиться слово «Работает!» Если отображается, то сегодня мы больше не будем трогать наш многострадальный PHP, иначе — проверьте еще раз файл конфигурации сервера и правильность ввода инструкции в файле proba.phtml.

Итак, все работает. Оставим в покое PHP и перейдем к более серьезным вещам :-). На самом же деле, установить PHP и связать его с HTTP-сервером — это только половина дела. Да, помимо реализации своих собственных возможностей, наш сервер теперь способен работать также и с многими функциями PHP. Но не со всеми. Мы не сможем работать с базами данных, а без них нам будет очень непросто создать свой Google. Для работы с базами данных нам нужен ОТДЕЛЬНЫЙ сервер, который будет отслеживать специфические запросы, посылаемые нашими PHP-скриптами, и выдавать нам необходимый результат. Вот тут-то собака и зарыта. Нам нужен так называемый сервер баз данных. В качестве такового можно использовать Microsoft SQL Server, PostgreSQL или MySQL Server. Мы остановимся на последнем, поскольку MS SQL Server работает в основном под Windows NT, а PostgreSQL — под Linux. Мы же работаем под Windows 9x/ME, и лучшим сервером для этой платформы является MySQL Server.

MySQL Server, как и PHP, абсолютно бесплатен и распространяется по лицензии GNU. Для скачивания он доступен на сайте http://www.mysql.com/ Downloads/MySQL-3.23/ mysql-3.23.52-win.zip, дистрибутив сервера версии 3.23.52 для платформы Win32 занимает около 12 Мб. Не знаю, как вы будете это скачивать :-), но сделать это настоятельно рекомендую. И еще советую скачать графическую оболочку для сервера — mysqlgui, с ней удобнее работать, чем с текстовой строкой сервера. Скачать можно по адресу http://mysql.directnet.ru/ Downloads/mysqlgui/ mysqlgui-win32-static-1.7.5-2.zip, версия оболочки — 1.7.5-2, дистрибутив размером около 670 Кб.

Итак, дистрибутивы скачаны, можно приступать к установке. MySQL Server можно установить в любую директорию, для работы он использует не абсолютные пути на диске, а фиксированный порт (чаще всего 3306). Но, раз уж мы привыкли к порядку, создадим на диске F: папку f:\usr\local\mysql и установим сервер туда. После установки вам не требуется ничего конфигурировать, можете сразу запускать сервер (в нашем случае путь для запуска будет F:\usr\local\mysql\bin\mysqld.exe). Во избежание ошибок советую также создать ярлык для выключения сервера, прописав ему в свойствах F:\usr\local\mysql\bin\mysqladmin.exe -u root shutdown.

Итак, мы более-менее определились с назначением домашнего сервера (отработка сайтов перед тем, как их выложить на публичный сервер) и его возможностями (работа с CGI, SSI, PHP+MySQL, поддержка виртуальных хостов). Теперь же мы научимся использовать эти возможности, так сказать, по максимуму. При этом по умолчанию имеется в виду, что вы — продвинутый пользователь, имеющий представление о создании и функционировании web-страниц и принципе обработки CGI. Если вы не понимаете, о чем я говорю, и надеетесь разобраться в этом позже — не надейтесь всуе, лучше сходите за пивом и начинайте учить матчасть :-). Этот цикл статей является обзором, который поможет вам самостоятельно научиться создавать динамические web-страницы на основе статических, используя при этом функции и возможности интерфейса CGI.

Итак, PHP. Много слов было сказано в поддержку этого языка, но не меньше было сказано и против. Чему верить? Все очень просто — нужно верить и хорошему, и плохому. Лишь в этом случае мы сможем объективно оценить пользу того или иного языка. Языки программирования, подобные PHP (т.е. предназначенные для работы в пространстве Сети), имеют несколько основных характеристик, по которым можно судить об их профпригодности :-) (Уважаемые профи! Если моя терминология не совпадает с вашей, не нужно заваливать мой ящик гневными письмами — я волен выражаться по-своему).

Первая и, пожалуй, самая характерная черта — это область выполнения скрипта. Например, JavaScript и VBScript выполняются на стороне клиента, т.е. начинают свою работу после полной загрузки страницы на вашей машине и обрабатываются движком браузера. Предназначены они, в основном, для придания динамичности (в данном случае — подвижности) вашей страничке — всякие там выпадающие менюшки, мерцающие кнопочки, разноцветные ссылочки чаще всего пишутся именно на подобных языках. Скрипты, написанные на PHP, Perl, ColdFusion и т.п., выполняются на стороне сервера, т.е. начинают работать до загрузки страницы после подачи вашего запроса (например, ввода адреса). Они обрабатываются программой-сервером и в качестве ответа на ваш запрос выдают динамически (т.е. в зависимости от запроса, интерактивно) генерируемые страницы. Эти страницы могут содержать как стандартные HTML-тэги, так и скрипты, написанные на JavaScript или VBScript, которые начнут выполняться после полной загрузки браузером сгенерированной страницы.

Вторая, не менее важная характеристика — это направленность функций. Эта характеристика напрямую зависит от предыдущей. Функции JavaScript, например, позволяют работать только с ресурсами клиентской машины и только с вашей локальной файловой системой. Чтобы подключить базу данных к JavaScript, нужно обладать недюжинным умом :-), и даже в этом случае реализация этой аферы не выйдет за пределы вашего локального компьютера. Функции PHP и прочих работают только с ресурсами и файловой системой машины-сервера, что позволяет подключать базы данных и использовать их для создания динамически генерируемых страниц.

Третья характеристика — скорость выполнения скрипта. В данном случае прослеживается четкое разделение на локальные и серверные языки. Среди локальных наивысшим быстродействием обладает JavaScript, среди серверных рекордсменом по обработке небольших объемов данных и текста является Perl. PHP — на втором месте, но при этом имеет широчайшие возможности доступа практически к любым серверам баз данных.

И, наконец, четвертая характеристика — синтаксис языка. Скрипты на JavaScript и VBScript встраиваются непосредственно в web-страницу и остаются видны в коде страницы во время ее просмотра. То есть исходный текст любого скрипта, написанного на встроенном языке, мы можем просмотреть, открыв HTML-код страницы. Естественно, ни о какой секретности, безопасности или соблюдении авторских прав в данном случае речь не идет — кто захочет, тот и просмотрит, скопирует и переделает на свой лад. Скрипты на Perl пишутся в виде отдельных файлов и подключаются к странице с помощью директив SSI, тэгов IFRAME или IMG. При этом в коде страницы мы получаем результат выполнения скрипта, а не его исходный код. Режим секретности — максимальный :-). Скрипты на PHP, так же как и на JavaScript, встраиваются в тело страницы и, как и Perl-скрипты, возвращают пользователю только результат выполнения.

Итак, все преимущества — налицо. Потому-то мой выбор и пал именно на PHP. Представьте себе язык программирования, обладающий простотой Basic’a, удобочитаемостью Pascal’a, функциональной мощью Perl’a и гибкостью C++. Представили? Вот это и есть PHP.

Кажется, пора заканчивать наше порядком затянувшееся вступление и переходить к практике. Думаю, для многих мои доводы окажутся достаточно убедительными для того, чтобы начать изучение PHP. Да и в конце концов, лишние знания, уверен, никому не помешают.

А начнем мы с начала :-). Для многих пользователей немаловажным критерием выбора того или иного языка программирования (как ни странно) является доступность специализированного редактора исходного кода. Например, для старого доброго Perl’a я смог найти два практически идентичных редактора (DzSoft Perl Editor и visiPerl), от использования которых действительно остается приятное впечатление. Но, к сожалению, специализированных редакторов для работы с PHP мне найти не удалось, так как язык еще достаточно молодой и зеленый :-). Наилучшим вариантом, который удалось откопать в Сети, является CuteHTML, поставляемый вместе с Upload-менеджером CuteFTP (он тоже нам скоро пригодится). В сущности, CuteHTML — это редактор HTML-страниц (никогда бы не догадался :-)) с некоторыми удобными «фишками» — например, выпадающий список со всеми атрибутами выбранного тэга (ср. Visual Studio) или подсветка комментариев. В общем, использовать можно, благо PHP в основном используется для динамической генерации страниц, которые, собственно, и состоят из пресловутых HTML-тэгов. Адрес сего менеджера-редактора — http://www.globalscape.com.

Итак, с выбором языка и редактора мы определились. Теперь их (язык и редактор) нужно совместить, полученную коалицию запустить, и чтоб работало :-). Вот именно этим мы и займемся на следующем занятии.

(Продолжение следует)

Источник: http://www.mycomp.com.ua/

 


Copyright © "Internet Zone"info@izcity.com 
Копирование и использование данных материалов разрешается только в случае указания на журнал "Internet Zone", как на источник получения информации. При этом во всех ссылках обязательно явное указание адреса вэб-сайта http://www.izcity.com/.
При наличии у копируемого материала авторов и источника информации - их также нужно указывать, наряду со ссылкой на нас. Подробнее условия использования материалов смотрите здесь.