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

Программируем на PHP - вопросы и ответы.


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

Здравствуйте! Выпуск номер 61
рассылки сайта РНР для всех!

Вы получили этот выпуск рассылки, так как являетесь подписчиком рассылок сайта http://subscribe.ru Рассылка выходит еженедельно, и предлагает Вам авторские материалы по теме программирования на скриптовом языке гипертекстового препроцессора РНР. Кроме того - есть система вопросов и ответов, обмен ссылками и баннерами, раздел Ваши письма и многое другое.
Форум сайта
Архив рассылки

Сайт автора


Вот и дождались продолжения :-) Несколько нюансов. Я не могу обещать, что отвечу на ВСЕ ваши вопросы. Я могу с уверенностью обещать ответ только по теме текста рассылки. Связано это с несколькими причинами, и самая банальная из них - элементарная нехватка времени на разбор ваших программ. Это иногда не сложно, но частенько полный глюк. Так что если я не ответил на ваше письмо - не обижайтесь, возможно в другой раз повезет больше :-0 А по тексту рассылки - плиз, не вопрос.
Итак, продолжение предыдущего выпуска. Они связаны между собой логической линией, и желательно для полного понимания всего прочитанного не терять то, что вы получили раньше.
Еще один момент. Часто спрашивают, можно ли публиковать мои тексты у себя на сайтах. Мое мнение, все что выложено в Интернете, уже является свободным для распространения, однако из уважения к автору очень желательно указать какие-то его данные. В моем случае я прошу оставить ссылку на сайт http://virtual.brest.by а в остальном на ваше усмотрение.
И еще :-) один последний нюанс. В этой рассылке должны быть кое-какие картинки, но к сожалению, тут они не могут быть размещены. Я предлагаю Вам скачать полную версию этих двух рассылок вместе с картинками. Это будет архив из одного файла, распаковав который, вы получите документ с предыдущей и этой рассылкой. Дальше я буду просто менять содержимое этого архива или добавлять новые.
Итак - ссылка для скачивания - http://virtual.brest.by/rass.phtml
 

Интернет-сайт: строим сами 

... продолжение. начало в предыдущем номере...

Дальше потребуется доступ к сети Интернет. Надеюсь, им то Вы уже успели обзавестись, иначе, зачем тогда весь этот разговор? Идем на сайт http://apache.org и скачиваем из раздела «Download» версию этого сервера выше 1.3. Для Windows, разумеется. 

 Есть версии и 2.0 и выше, но это уже на Ваше усмотрение. Они на момент написания материала славились своей нестабильностью и не очень активно использовались в сети.

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

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

Этим Вы застрахуете себя от возможных неприятностей в виде некорректной работы программы. Есть тут и один подводный камень. Дело в том, что у Вашего хостера, скорее всего, будет не Windows в качестве операционной системы, а что-нибудь из Unix или того круче - FreeBSD. Но в этом-то и прелесть устанавливаемого сервера Apache. Он будет не только работать и там и там, он еще будет работать ОДИНАКОВО, что для нас немаловажно, так как ставить себе такой экзотический софт не каждый согласиться :-). А окна… Они как-то привычней.

Каждый файл на сайте сопровождается цифровой подписью PGP с аналогичным именем файла, но другим расширением. Не спутайте собственно файл и удостоверяющую его подпись.

 Скачали? Теперь попробуем поставить его. Я далеко не советую точно следовать моим инструкциям. Наоборот, я хочу, что бы Вы проявили свою творческую натуру и попробовали самостоятельно поэкспериментировать на любом из этапов, который мы проходим. Тем более что установка сервера сводится к простой стандартной установке обычной программы, с которой среднестатистический пользователь компьютера сталкивается каждый день по нескольку раз. И все же я дам пошаговые инструкции, так как если Вы не исполните свой первый скрипт, все это бессмысленно. Поехали.

Запустите только что скачанный файл, это обычная инсталляция, надеюсь уже давно привычная для Вас.

 Жмите «Next» и потом «Yes». Раз уж скачали, то придется согласиться с условиями лицензии, все равно там как обычно – никакой ответственности, используем на свой страх и риск.

«Next» придется еще несколько раз понажимать до тех пор, пока нам не предложат выбрать директорию для установки. Тут надо не торопиться, а указать на наш диск «Е» и каталог «usr»: «e:/usr/apache/»

 Собственно говоря, каталог для установки не имеет принципиального значения, если не считать того факта, что при переустановке системы не потребуется повторной инсталляции сервера и всего другого добра. А это говорит о том, что сам сервер никак не интегрируется в систему, что страшно любят делать другие программы. Все настройки Apache хранит в собственных конфигурационных файлах. Стоит и другим взять пример подобного джентльменского поведения.

 Опять «Next», далее выбираем типичную конфигурацию для установки (это пункт Typical) и опять уже знакомый нам «Next», даже два раза (жалко, что ли).

В процессе этого сервер установится в выбранную нами директорию и в типичной конфигурации (без разного рода документации, все равно она там написана на английском), а другой нам и не надо. В конце, после завершения установки, нас поздравят с этим эпохальным событием и предложат нажать кнопку «Finish», что тут же и надо сделать.

Все, сервер установлен. Его можно попробовать запустить. Сделать это можно разными способами, и самый простой – зайти в каталог, куда производили установку, и выполнить файл apache.exe.

Запустится окно DOS-сессии. Его закрывать не надо – это и есть работающий Apache-сервер. Можно заранее заготовить для работы несколько ярлыков. Так, для запуска Apache используется «apache.exe -k start» для перезапуска – «apache.exe -k restart» а для остановки – «apache.exe -k shutdown». В последних версиях установщика Apache эти ярлыки автоматически создаются в меню «Пуск».

 Другой способ запуска сервера заключается в использовании сторонних программ (я бы даже сказал – программулек), и в этом случае сам запуск становится на редкость приятным процессом, а окно DOS-сессии не будет мозолить глаза на экране. Я имею в виду программу Apache Manager для Windows. Она представляет из себя красный квадратик, который селится в трее около часов и мирно ждет того времени, когда по нему кликнут и выберут пункт контекстного меню «Запустить Apache».

 В этом случае красный цвет сменится на зеленый, и будет мирно светить все время, пока сервер будет работать.

 Надо отметить, что иногда возникают ошибки при работе менеджера Apache при использовании файловой системы NTFS. Их причина пока не ясна и видимо заключается в неполной совместимости или в ошибке в программе. Новых версий, к сожалению, уже давно нет, так как в версии Apache 2 появился свой менеджер (ну наконец-то!) и там рекомендуется использовать именно его.

Работает? Если Вы видите что-то типа Apache running (квадратик менеджера загорелся зеленым), то да. Не торопитесь, подождите с минутку, сервер может вывалиться из за разных типов ошибок. Если не повезло, и окно само закрывается или в нем появляется больше текста, то значит где-то ошибка, попробуйте еще раз всю процедуру заново. Как правило, умная программа подсказывает, в какой строке конфигурационного файла ошибка. Чаще всего это неправильные пути. Их надо исправить. Сами конфигурационные файлы находятся в папке «e:/usr/apache/conf/». Самый важный и основной из них, это httpd.conf. Его нам, возможно, придется немного позже редактировать.

И вот первый шаг к успеху сделан. Apache запущен, переходим ко второму этапу. Но прежде – немного истории.

 Программирование на стороне сервера

Давайте уясним одну важную вещь. Есть клиент, и есть сервер. Этими понятиями мы будем оперировать наиболее часто, а значит надо их стазу оговорить. Клиент, это грубо – Ваш компьютер, когда он подключен к Интернету и по разным протоколам запрашивает информацию разного рода. А сервер – это удаленный сколь угодно далеко другой компьютер, отдающий для Вас эту информацию.

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

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

Итак, именно на стороне сервера нам и придется программировать. И именно для этих целей мы так усердно пытаемся поставить сервер у себя на домашнем (читай – рабочем) компьютере. Ну не качать же каждый раз все скрипты в Интернет! Сделал в локале готовую программу – залил ее на сервер по FTP. Экономия на времени в Интернете! А для программирования мы будем использовать специальный и широко распространенный язык – РНР (читается по-русски как пи-эйч-пи).

 История PHP

Этот язык появился на свет осенью 1994 года, и его создатель – Расмус Лердорф, использовал язык в своих целях, для того, что бы иметь представление о тех людях, которые посещают его сайт и знакомятся с его резюме.

 По словам автора, РНР был написан буквально за день в промежутках между деловыми встречами. Сначала это была просто невзрачная CGI-оболочка, написанная на языке Perl, и служила она исключительно для специфических целей. Для справки - CGI (Common Gateway Interface) - общий шлюзовой интерфейс,  является стандартом, который предназначен для создания серверных приложений HTTP. Такое приложение, которое называют шлюзом или CGI-программой, запускается сервером в реальном режиме времени. Сервер передает запросы пользователя CGI-программе, которая их обрабатывает, и возвращает результат своей работы на экран пользователя. Таким образом, посетитель получает динамическую информацию, которая может изменяться в результате влияния различных факторов. Сам шлюз (скрипт CGI) может быть написан на различных языках программирования - C/C++, Fortran, Perl, TCL, Unix Schell, Visual Basic, Apple Script и других подобных языках. Но в случае с РНР, для написания его в первоначальном варианте был выбран язык Perl, как наиболее простой и доступный.

В результате дальнейшей эксплуатации выяснилось, что оболочка обладает маленькой производительностью (медленно работает), и автор вынужден был переписать все заново, но уже на языке «С», что позволило увеличить скорость работы РНР. Пользователи сервера, где располагался сайт с первой версией РНР, попросили себе такой же инструмент, и хоть автор не предполагал, что кто-то другой будет пользоваться этим языком, довольно быстро РНР перерос в самостоятельный проект, и в начале 1995 года вышла первая известная нам версия продукта. Имя этого первого пакета было Personal Home Page Tools (средства для персональной домашней страницы).

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

  Затем была более дополненная 3-ая и, наконец, современная нам 4-ая версия РНР. Сегодня РНР – это мощный кроссплатформенный набор средств, который располагается на сервере и предназначен для обработки специального кода, встраиваемого в HTML-страницу. Благодаря этому, появляется возможность легко создавать динамические сайты. Файлы, созданные таким образом, хранятся и обрабатываются на сервере, и когда посетитель запрашивает документ с кодом РНР, скрипт обрабатывается не браузером посетителя как, например, Java Script, а сервером (точнее, сервер передает управление специальной программе, обрабатывающей код PHP), и посетителю передаются уже только результаты работы, часто совершенно отличные от непосредственно кода. Точно также  работает CGI-программа, написанная на «С» или Perl.

Но в отличие от CGI, код РНР можно встраивать в любое место HTML-странички, что является основным преимуществом по отношению к CGI. А, кроме того, сам язык РНР очень прост для изучения, и не требует каких-либо специфических знаний. Например, лично мне вполне хватило опыта, приобретенного лет десять назад на уроках информатики в школе, где мы изучали язык Бейсик на очень модных и дорогих тогда Ямахах. Но, несмотря на столь радужную характеристику, есть у РНР и недостатки. Стоит отметить довольно медленную (по сравнению с программами на CGI) работу больших (именно больших, так как маленькие скрипты не вызывают существенной нагрузки) скриптов РНР.

Так или иначе, РНР остается интерпретируемым языком, что непременно ведет к ухудшению производительности в случае очень больших и сложных программ, но для выполнения несложных манипуляций на сайте, РНР – лучший выбор. Недаром к середине 2000 года РНР использовался более чем на 2,5 миллионах сайтов! А теперь – нет ни одного уважающего себя хостинга без поддержки этого сверхпопулярного языка.

 Справедливости ради стоит заметить, что последние версии РНР практически лишены этих недостатков. Полностью переписанный и оптимизированный код сделал свое дело, и если Ваш хостинг работает на версии более 4.1 – можете спать спокойно. Этому очень способствовал тот факт, что частично PHP стал компилятором. Но только – частично, в нем очень гармонично уживаются и интерпретатор, и компилятор. От каждого РНР впитал только лучшие качества и этим стал еще более силен.

 


Наши друзья

http://virtual.brest.by - Виртуальный Брест. Региональный информационно - развлекательный портал города Бреста. Чат, форум, статьи, услуги, объявления, недвижимость, каталог сайтов - это и многое другое ждет Вас на страницах сайта.
http://price.brest.by - сайт прайсов фирм города Бреста. Поиск, подсчет, реклама и т.д.
http://204040.com - Интернет-магазин компьютерного салона Успех г. Брест
http://tweak.tut.by - http://tweak.bresttelecom.by - Оптимизация и настройка компьютера. Если Вас интересуют различные аспекты настройки Вашего мегагерцевого друга, Вам надо посетить сайт посвященный настройке и оптимизации. Кроме того - список последних версий популярных программ и свежие новости, а так же чат, форум и многое другое!


автор рассылки Андрей Кухарчик / http://virtual.brest.by/php



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


В избранное