Что такое статические и динамические страницы. Статические и динамические веб - страницы

Прямая индексируемая ссылка на сайт - это ссылка не закрытая запрещающими HTML тегами и/или атрибутами, а так же без каких-либо перенаправлений (редиректов). Например, если вы решили разместить на вашем сайте/блоге ссылку на мой сайт - её желательно не закрывать от поисковых роботов запрещающим атрибутом nofollow. Если уж решили сослаться на одну из моих страниц - будьте добры открыть ссылку для индексации. За прямые индексируемые ссылки на мой сайт буду признателен.
В случае использования на вашем сайте/блоге позаимствованный с этого сайта графический/текстовый контент или какой-либо фрагмент/цитата, ссылка на сайт сайт должна быть без каких-либо запрещающих атрибутов и/или редиректов.

Что такое TFP и FTP, в чем разница?

Аббревиатуры TFP и FTP не имеют ничего общего между собой. Единственное что их объединяет, так это лишь созвучность произношения, которое кого-то может запутать.
TFP - (Time for Print) , переводится как «время за распечатки». Этот термин используют фотографы и фотомодели. TFP - это своего рода валюта, которой пользуются представители фотоиндустрии. TFP, как правило, закрепляют соглашением между моделью и фотографом, во избежании разного рода неприятностей связанных с авторскими правами и пр.
Когда модель соглашается на TFP - это значит что она готова работать бесплатно определенное количество времени, а за работу получит свои фотографии (все или некоторые, с обработкой или без нее).
Теперь по поводу FTP.
FTP (File Transfer Protocol) – это протокол передачи файлов используемый веб-разработчиками и др. Для работы с сервером через этот протокол, используют FTP клиент - это программа, которая работает непосредственно с FTP сервером.
FTP протокол используется для передачи сетевых документов, например, HTML, PHP, CSS, JPEG и пр. с частного устройства разработчика на сервер хостинга. Этим же протоколом пользуются для загрузки на частное устройство разработчика сетевых документов с сервера.

Что такое расширение файла?

Расширение файла , а вернее, расширение имени файла - это последовательность определенных символов добавляемых к имени какого-либо файла. Эти символы предназначены для идентификации типа, или как говорят, формата файла. Расширение имени файла - это ничто иное как сочетание букв и/или чисел, которое стоит после последней точки в имени файла, например, fotograf.gif, где «fotograf» - это имя файла, а «.gif» - его расширение. Существует огромное количество расширений файлов, но все они соответствуют определенным стандартам и областям применения. Но если вы захотите придумать какому-то файлу свое оригинальное расширение, например, имя_файла.fotograf, - пожалуйста, нет проблем! Но такой файл ОС Windows не сможет открыть, если на вашей машине нет соответствующей программы, которая видит это расширение. Например, если в ОС Windows вы захотите открыть файл с расширением.gif, данная ОС знает об этом расширении и откроет какое-то изображение. Но если вы захотите открыть файл с расширением.fotograf, - такой файл не откроется, так как ОС Windows не знакома с таким расширением. Файл с таким расширением можно будет открыть в приложении, которое поддерживает данное расширение.

Что такое сайт-визитка, какие бывают?

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

Что такое динамическая веб-страница / веб-сайт?

Динамическая веб-страница - это страница на которой может генерироваться (изменяться) контент или какая-то его часть в режиме реального времени без привлечения дополнительных телодвижений. Для динамически связанных страниц используют так называемый движок - CMS (система управления контентом).
Как это работает? Например, страница, которую вы видите в данный момент в окне браузера, в таком виде не существует. Она собрана из отдельных частей (шаблонов), которые собирает сервер в одно целое. То есть, при запросе какой-либо страницы, веб-сервер обрабатывает запрос и тут же "на лету" собирает из отдельных частей веб-страницу и отдает её нам на просмотр в браузере. Меняется только контент страницы, а шаблон страницы остается неизменным.
Представьте себе шкаф в котором есть несколько полок с разными вещами. На одной полке лежит текстовый контент (база данных), на другой - графические файлы (фотографии, графические элементы дизайна), на третьей - скрипты (например, PHP скрипты), на четвертой - стили CSS, и так дальше... Значит, когда сервер получил запрос на тот или иной контент, он знает где что лежит, и быстренько собирает нам страницу из нужных частей: из БД берет нужный текстовый контент, из полки с графикой - нужные графические файлы, и т.д. Изменив в одном месте какую-то часть шаблона, эти изменения применяются для всех страниц сайта.

Что такое статическая веб-страница / веб-сайт?

Статическая веб-страница - это веб-документ, который находится на сервере в таком виде, в каком его видит пользователь в своем браузере. То есть, такой документ не собирается из отдельных частей (шаблонов), а лежит на сервере такой как есть, в собранном виде, и загружается с сервера одним файлом с подключенными к нему CSS стилями и/или скриптами.
Чтобы изменить содержание такого документа, сперва его необходимо отредактировать на рабочем компьютере в каком-нибудь HTML редакторе, после чего заново залить (загрузить) на сервер. Чтобы изменить какую-то часть дизайна или, например, добавить/убрать пункт меню навигации, для этого потребуется модифицировать (изменять) все страницы сайта.

Веб-дизайнер и веб-программист, в чем разница?

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

Под продвижением (раскруткой) сайта понимают - продвижение сайта в топ поисковой выдачи по определенным ключевым словам в поисковых системах Google, Yandex и др.
Топ поисковой выдачи - это первая страница сайта поисковой системы с первыми 10-ю ссылками на сайты. За эти 10 позиций идет непримиримая борьба среди сайтов одной тематики. По статистике, те сайты, которые оказываются на вершине топа (занимают первые три позиции), собирают наибольшее количество посетителей. Для того чтобы оказаться на этой вершине, некоторые ресурсы платят огромные деньги. Но мало там оказаться, необходимо там удерживаться, и это ведет к постоянной борьбе не только среди больших SEO компаний, но и среди частных

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

По поведению документа в браузере пользователя, различают:

  • Статические html страницы
    Статические - означает, что страница выглядит всегда одинаково, на зависимо от действий пользователя. Например, меню организованно ссылками на отдельные страницы, а не выпадающим списком.
  • Динамические html страницы
    Эти страницы уже могут реагировать на действия пользователя и изменяться. Например, при щелчке по тексту может показываться всплывающий блок текста с переводом слова. Кстати, именно так реализован один из плугинов-переводчиков для браузера Firefox.

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

Это может звучать несколько запутано, но не переживайте. Когда вы с этим столкнетесь - все будет проще.

Самый распространенный язык для создания динамики веб страниц - это JavaScript. (Не путайте с языком программирования Java. Это две совершенно разные сущности.)
Реже используется VBscript(visual basic script). (Microsoft как всегда пошла своим путем.)

По способу создания документы делят опять на статические и динамические.

Статическими называют страницы, если они лежат на сервере в html е.
А динамическими называют те, которые генерируются "на лету" по запросу браузера.

Как легко у еть, если на сервере лежит обычная html страница, то такой подход сильно ограничен. Например, у вас есть интернет-магазин, и вы добавили новый товар. Если ваш магазин состоит из "статических" html страниц, то вы должны вручную подправить несколько других страничек. Как минимум это каталог товаров и, наверное, форму заказа. Если у вас кончился какой-либо товар, то опять надо обновлять сайт. Это очень неудобно. Поэтому вы не найдете ни одного интернет магазина на html. (Хотя и можно придумать систему, которая автоматически перегенирирует сайт при изменении товара. Но это не очень элегантное решение и я о таком никогда не слышал).

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

  1. Браузер запрашивает у сервера документ
  2. Сервер определяет, что документ является скриптом и запускает его на выполнение
  3. Скрипт генерирует html страницу
  4. Сервер отправляет сгенерированную страницу браузеру, так что тот и не догадывается, что на сервере отработал скрипт

Существует несколько языков программирования, на которых могут писать скрипты, которые генерируют "динамические" страницы. Самые распространенные из них:

  1. Python
  2. Бинарный код (программа на Си или С++ скомпилированная в исполняемый код)

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

Как правило если вы ите, что адрес страницы заканчивается на.html или.htm, то это обычная статическая страница. (Можно конечно настроить сервер так, чтобы он исполнял скрипты, которые заканчиваются на эти же окончания, только это не практично. Все таки.html и.htm - это стандарт и переопределять эти окончания не стоит.) Если же вы ите любое другое окончание, то это скорее всего скрипт. Например, скрипты на языке PHP имеют обычно расширение.php, на языке Perl - .pl, ASP - .aspx
Если же адрес не содержит имени страницы, то сервер будет использовать документ заданный по умолчанию (обычно это либо index.html либо index.htm либо index.php).

Надо сказать, что сейчас все больше набирает силу гибридная . Название у нее, как у голландского футбольного клуба - AJAX, что означает: Asyncronous JavaScript And XML (Как расшифровывается название голландского клуба я не знаю). Эта позволяет скриптам на JavaScript обращаться к какому либо скрипту на сервере и получать информацию с сервера. Это в свою очередь, дает пользователю гибкость и позволяет перезагружать только часть содержимого страницы, а не всю ее полностью (что значительно экономит трафик).

Выводы

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

Если же у вас на сайте часто меняющаяся информация, то выбор следует остановить на использовании скриптов.
Однако, у скриптов есть один минус: они требуют дополнительных ресурсов от сервера для своей работы. Если html страничку надо просто прочитать с сервера и отправить браузеру, то скрипт надо сначала запустить и выполнить. К тому же, очень часто скрипты используют систему управления базой данных (СУБД ) для хранения изменяющихся данных.

татические страницы представляют собой точную копию файлов, лежащих в каталогах Web-cервера, и не изменяются до тех пор, пока разработчик сам в них что-то не поменяет. Однако страницы могут формироваться динамически, то есть во время обработки запроса по какой-то программе, а не из готового файла на диске. Существует несколько способов формирования такой страницы:

формирование по запросу непосредственно на Web-сервере. Для реализации возможности динамического формирования Web-страниц необходимо дать серверу указания, какие файлы являются «обычными», а какие содержат инструкции по их программной обработке. Так, все файлы в соответствующем каталоге Web-сайта, в списке прав доступа к которым есть «выполнение», считаются динамическими, а сервер сам подбирает средство для формирования конкретной страницы при обращении к такому файлу на основе его атрибута и/или расширения его имени. При этом страницу может сформировать либо сам сервер (при помощи специальных команд), либо внешняя программа, запускаемая непосредственно или через CGI-интерфейс (common gateway interface – общий шлюзовой интерфейс). Программа для формирования динамической страницы может быть написана на компилируемом или интерпретируемом языке. Текст программы, содержащий команды для динамического формирования страниц, называется скриптом. Список соответствия атрибутов скриптов внешним программам для их обработки задается в разделе Web-сервер/Обработчики скриптов. Например, по умолчанию скрипты с расширениями *.pl и *.cgi обрабатываются интерпретатором языка Perl;

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

    1. Технология cgi

Вы наверняка сталкивались со страницами, которых ранее не существовало и которые были созданы по вашему запросу динамически – сформированы, как говорится, «на лету».

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

Одна из технологий, позволяющая добавить динамическое содержание в Web-страницы, называется CGI. Она позволяет ассоциировать с тем или иным URL не просто статический документ, а программу, в результате работы которой могут быть сформированы данные в реальном времени.

Рассмотрим пример с предоставлением сведений о погоде. Метеорологическая сводка о погоде меняется каждый день, и ежедневно может создаваться новая статическая страница с прогнозом. Однако, если вы хотите предоставлять мгновенные данные, вы должны каждый раз генерировать новую страницу. Это может быть реализовано на основе CGI-технологии. В момент обращения на сервер на нем запускается CGI-программа, которая обращается к цифровому измерительному устройству и выдает сведения о температуре, давлении и т.д. Когда вы в очередной раз обратитесь на этот адрес, вы получите новые сведения.

Другой пример: когда вы заполняете некоторый запрос, например запрос в поисковой системе, то в ответ получаете результаты работы СGI-программы в виде набора искомых адресов.

CGI-программу можно представить как часть Web-сервера, которая запускается Web-сервером в реальном времени. Сервер передает запросы пользователя CGI-программе, которая их обрабатывает и возвращает результаты своей работы на экран пользователя (рис. 3). На большинстве Web-серверов CGI-механизм организован следующим образом: создается специальная поддиректория, в которой хранятся подобные программы, и администратор Web-сервера настраивает доступ к ней таким образом, чтобы файлы из нее не считывались, а запускались на выполнение. Результат работы программы отсылается браузеру в ответ на запрос. С точки зрения клиента нет никакой разницы, что находится по адресу данного URL – статический документ или CGI-программа. Браузер воспринимает информацию одинаково независимо от того, сформирована ли она «на лету» или речь идет о статической странице. Результат работы CGI-программы имеет тот же формат, что и статический документ.

Аббревиатура CGI наверняка попадалась вам в строке вашего браузера во время путешествия по Всемирной паутине, и вы, скорее всего, видели ссылку на /cgi-bin/ – директорию, в которой обычно и лежат cgi-программы. Множество интерактивных сервисов, таких как гостевая книга, форум и т.д., построены именно на cgi-программах.

Под термином «CGI» понимают не только программу, но и протокол. В этом смысле CGI – это стандартный для Web-сервера способ передать пользовательский запрос прикладной программе и получить данные назад для передачи их пользователю. Протокол CGI для пересылки данных между сервером и приложением является частью протокола HTTP.

Следует отметить, что если вы собираетесь разместить свою страницу на серверах бесплатного хостинга, то вполне возможно, что cgi-скрипты на этих серверах не поддерживаются.

Альтернативой CGI является технология компании Microsoft Active Server Page (ASP), построенная по тому же принципу: скрипт, включенный в Web-страницу, выполняется на сервере до того, как страница отсылается пользователю.

Существуют и другие технологии, работающие по тому же принципу.

Как видно на рис. 3, CGI-программа работает на стороне сервера.

Рис.3.

Однако возможно также организовать динамические страницы за счет передачи на клиентский компьютер программ, которые генерируют динамическое содержание страниц уже на стороне клиента (рис. 4).

Рис. 4

Эта технология реализована следующим образом: активные документы хранятся на Web-серверах и скачиваются на локальный компьютер так же, как и статические страницы, но после того, как программа активного документа оказывается на локальном компьютере, она запускается и выполняет определенные вычисления на компьютере пользователя, опираясь на локальные вычислительные ресурсы. А результаты этих вычислений уже отображаются на экране. Соответственно скорость отображения данных на экране не зависит от скорости связи с удаленным сервером, поскольку вывод активного документа происходит только после его загрузки на локальный компьютер. Для создания активных документов могут использоваться различные технологии: приложения, написанные на JavaScript, Java-аплеты и элементы управления ActiveX.

Теперь, после подробного рассмотрения запроса/ответа HTTP , обратим внимание на различные типы контента (любое содержательно-значимое наполнение информационного ресурса), который вы ожидаете увидеть в Интернет. Я разделил его на четыре типа - простой текст, стандарты Web , динамические Web -страницы, и форматы, требующие других приложений или подключаемых модулей (плагинов).

Простой текст

В самом начале, до появления каких-либо стандартов Web или плагинов, Интернет состоял в основном из изображений и простого текста - файлов с расширением.txt или похожим на него. Когда файл с простым текстом встречается в Интернет, браузер просто выводит его как есть, без какой-либо дополнительной обработки. Файлы с простым текстом все еще можно часто встретить на сайтах университетов.

Стандарты Web

Базовыми строительными блоками Всемирной паутины WWW являются три основных стандарта Web - HTML (или XHTML, эти два понятия будут использоваться здесь взаимозаменяемо для наших целей), CSS и JavaScript.

Язык разметки гипертекста (HTML) является в действительности довольно удачным названием, так как хорошо передает его назначение. HTML используется для разбиения документа, определения его содержания и структуры, и определения значения каждой части (того, что содержит весь текст и т.д., что мы видим на страницах Web ). Он использует специальные элементы для определения на странице различных компонентов.

Каскадные таблицы стилей (CSS) предоставляют полный контроль над тем, как выводится элемент. Очень легко, используя объявления стилей, вывести все параграфы через две строки (line-height: 2em;), или сделать все заголовки второго уровня зеленого цвета (color: green;). Существует множество преимуществ разделения структуры и форматирования, и мы рассмотрим это более подробно в следующей лекции. Чтобы продемонстрировать мощь совместного использования HTML и CSS, рисунок 3.2 показывает простой код HTML слева, вообще без дополнительного форматирования, а справа можно видеть тот же самый код HTML с добавленными к нему стилями CSS.

Рис. 3.2. Простой HTML слева, HTML с использованием CSS справа

Наконец, язык JavaScript предоставляет Web -сайту динамические функции. Можно писать небольшие программы на JavaScript, которые будут выполняться на клиентском компьютере, не требуя установки на сервере какого-либо специального программного обеспечения. JavaScript позволяет добавить на Web -сайт некоторые базовые функции и интерактивность, но он имеет свои ограничения, что ведет нас к серверным языкам программирования и динамическим Web страницам.

Динамические страницы Web

Иногда при просмотре Интернет можно встретить страницы Web , которые не используют расширение.html - они могут иметь расширение.php, .asp, .aspx, .jsp, или какое-нибудь другое странное расширение. Все это примеры динамических технологий Web , которые могут использоваться для создания страниц Web , имеющих динамические разделы - код, который выводит различные результаты из базы данных или другого источника данных в зависимости от определяемых для него значений. Мы рассмотрим страницы Web этого типа ниже в разделе "Сравнение статических и динамических Web -сайтов".

Постоянно подключенные к Интернету по всему миру компьютеры, на которых располагаются сайты, называются серверами (от английского serve –– служить, обслуживать). Программное обеспечение, которое обеспечивает отправку web-страниц во “всемирную паутину”, также называется сервером или w eb-сервером .

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

Если запрос не может быть выполнен, то web-сервер возвращает определенный код ошибки (например, код 404 –– файл не найден, или 403 –– к нему запрещен доступ).

Браузер, в свою очередь, отображает страничку, опираясь на правила языка HTML, и обеспечивает реакцию на действия пользователя, когда он щелкает по гиперссылкам. Языки HTML и CSS описывают только содержимое web-страниц и их внешний вид. Все страницы такого сайта должны быть созданы заранее и, чтобы изменить его содержимое, необходимо переписать код страниц и снова загрузить сайт.

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

Динамические w eb-страницы

Ограничения статических web-страниц снимаются в динамических web-сайтах. Страницы таких сайтов могут динамически менять содержимое и оформление. Кроме того, можно создавать интерактивные документы и web-приложения, которые в реальном времени взаимодействуют с пользователем.

При запросе динамических страниц web-сервер запускает программу-сценарий (называемую также скриптом –– script ), которая написана на каком-либо языке программирования. Именно такой сценарий, в зависимости от параметров запроса, и формирует HTML-страницу, которая передается браузеру и отображается. При этом никаких дополнительных требований к браузеру пользователя не предъявляется, он может быть любым, вся нагрузка по созданию динамических страниц ложится на сервер. Браузер по-прежнему работает с уже готовыми web-страницами, разница лишь в том, что их содержимое формируется для каждого посетителя сайта отдельно.

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

Сценарии на языке PHP

Серверные сценарии можно писать на различных языках программирования, но чаще для этого используются языки, специально для этого предназначенные: PERL (Practical Extraction and Report Language –– практический язык для создания выборок и отчетов) и PHP (Hypertext Preprocessor –– препроцессор гипертекста).

Язык PHP сейчас на первом месте по популярности в силу большой функциональности и сравнительной легкости освоения. Некоторые операционные системы, например, Linux, уже имеют в своем составе PHP. В Windows требуется загрузить и установить соответствующее программное обеспечение вручную.

Как работают php -страницы

При запросе браузером PHP-страницы (то есть страницы, формируемой с помощью PHP-сценария) web-сервер, в свою очередь, передает запрос PHP-процессору, который считывает файл страницы. Если этот файл является сценарием (php-программой *.php), то выполняются операторы этого сценария, а в памяти web-сервера формируется нужная страница, которая, в конце концов, передается браузеру. Причем в зависимости от запроса один и тот же файл этой страницы может содержать разную информацию.

Таким образом, главная цель PHP-сценария состоит в формировании HTML-страниц. При этом может выполняться запрос к базе данных, в которой хранится вся необходимая информация.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.