CFA LogoCFA Logo Computer
Загрузка поиска
Новости Компьютеры Прайс-лист [Новое] Прайс-лист [Б/У] Для ноутбуков Конфигуратор ПК Заказ, Оплата, Доставка Сервис объявления Драйвера Статьи Как нас найти Контакты
Новости
RSS канал новостей
Компания Acer сделала наконец официально доступным свой новый ноутбук, рассчитанный на профессиональных ...
Не проходит и дня чтобы производители ни анонсировали какую-нибудь новую материнскую плату, рассчитанную ...
В списке продуктов азиатского производителя Micro-Star International пополнение. Именитый разработчик ...
Производители продолжают работать над заполнением фирменных линеек графических ускорителей NVIDIA ...
Компания Biostar анонсировала в эти дни первую для себя материнскую плату на чипсете AMD X370, который ...
Самое интересное
Программаторы 25 SPI FLASH Адаптеры Optibay HDD Caddy Драйвера nVidia GeForce Драйвера AMD Radeon HD Игры на DVD Сравнение видеокарт Сравнение процессоров

АРХИВ СТАТЕЙ ЖУРНАЛА «МОЙ КОМПЬЮТЕР» ЗА 2002 ГОД

Сервер племени апачей

Артем Cosmic ШМАНЦЫРЕВ cosmic@mail.zp.ua

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

В результате прочтения предыдущей статьи ваш компьютер обзавелся собственным «индейским вождем» — сервером 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.

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

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

Рекомендуем ещё прочитать:






Данную страницу никто не комментировал. Вы можете стать первым.

Ваше имя:
Ваша почта:

RSS
Комментарий:
Введите символы: *
captcha
Обновить






Рейтинг@Mail.ru
Хостинг на серверах в Украине, США и Германии. © www.sector.biz.ua 2006-2015 design by Vadim Popov