- •Область применения
- •История php
- •2. Змінні. Константи. Вбудовані константи. Елементи структурного програмування (розгалуження, організація циклів, передача управління) Основы
- •Предопределенные переменные
- •Область видимости переменной
- •Ключевое слово global
- •Использование статических (static) переменных
- •Ссылки с глобальными (global) и статическими (static) переменными
- •Переменные переменных
- •Переменные извне php html-формы (get и post)
- •Имена переменных кнопки-изображения
- •Точки в именах приходящих переменных
- •Определение типов переменных
- •Константы Содержание
- •Синтаксис
- •"Волшебные" константы
- •Выражения
- •3. Використання масивів у php. Способи створення масиву. Індексні масиви.Асоціативні масиви Массивы
- •Синтаксис Определение при помощи array()
- •Создание/модификация с помощью синтаксиса квадратных скобок
- •Полезные функции
- •Что можно и нельзя делать с массивами
- •Так что же в этом плохого?
- •Преобразование в массив
- •Сравнение
- •Примеры
- •4. Функції в php. Синтаксис опису функцій. Порядок визначення і виклику. Способи
- •Функции, определяемые пользователем
- •Аргументы функции
- •Передача аргументов по ссылке
- •Значения аргументов по умолчанию
- •Списки аргументов переменной длины
- •Возврат значений
- •Обращение к функциям через переменные
- •Анонимные функции
- •5. Схема роботи Web-додатку, архітектура клієнт-сервер. Протокол http. Загальна структура http-повідомлень (запит, відповідь)
- •Технические особенности[править | править вики-текст]
- •Архитектура веб-приложений[править | править вики-текст]
- •Программное обеспечение[править | править вики-текст]
- •Клиенты[править | править вики-текст]
- •Исходные серверы[править | править вики-текст]
- •Прокси-серверы[править | править вики-текст]
- •История развития[править | править вики-текст]
- •Структура протокола[править | править вики-текст]
- •Стартовая строка[править | править вики-текст]
- •Методы[править | править вики-текст]
- •Options[править | править вики-текст]
- •Get[править | править вики-текст]
- •Head[править | править вики-текст]
- •Post[править | править вики-текст]
- •Put[править | править вики-текст]
- •1Xx Informational («Информационный»)
- •2Xx Success («Успех»)
- •3Xx Redirection («Перенаправление»)
- •4Xx Client Error («Ошибка клиента»)
- •5Xx Server Error («Ошибка сервера»)
- •Заголовки[править | править вики-текст]
- •Тело сообщения[править | править вики-текст]
- •Основные механизмы протокола[править | править вики-текст] Частичные get[править | править вики-текст]
- •Условные get[править | править вики-текст]
- •Согласование содержимого[править | править вики-текст]
- •Управляемое сервером[править | править вики-текст]
- •Управляемое клиентом[править | править вики-текст]
- •Прозрачное согласование[править | править вики-текст]
- •Множественное содержимое[править | править вики-текст]
- •Особенности протокола[править | править вики-текст]
- •6. Обробка даних html-форм. Способи передачі параметрів сценарію php. Звернення до параметру, переданому з форми Обработка данных из html-форм при помощи php
- •Способы передачи параметров сценарию
- •Передача параметров с помощью html-форм
- •Назначение[править | править вики-текст]
- •Понятие[править | править вики-текст]
- •История[править | править вики-текст]
- •Заблуждения[править | править вики-текст]
- •Работа куки[править | править вики-текст] Установка куки[править | править вики-текст]
- •Атрибуты куки[править | править вики-текст]
- •Условия истечения срока хранения[править | править вики-текст]
- •Аутентификация[править | править вики-текст]
- •Настройка браузера[править | править вики-текст]
- •Приватность и сторонние куки[править | править вики-текст]
- •Недостатки куки[править | править вики-текст]
- •Неточная идентификация[править | править вики-текст]
- •Кража куки[править | править вики-текст]
- •Подмена куки[править | править вики-текст]
- •Межсайтовые куки[править | править вики-текст]
- •Нестабильность между клиентом и сервером[править | править вики-текст]
- •Срок действия куки[править | править вики-текст]
- •Альтернативы куки[править | править вики-текст]
- •Url (строка запроса)[править | править вики-текст]
- •Скрытые поля формы[править | править вики-текст]
- •Http-аутентификация[править | править вики-текст]
- •Сохранение на клиентской стороне[править | править вики-текст]
- •Куки и сессии http
- •Обеспечение безопасности передачи данных http
- •Назначение[править | править вики-текст]
- •Понятие[править | править вики-текст]
- •История[править | править вики-текст]
- •Заблуждения[править | править вики-текст]
- •Работа куки[править | править вики-текст] Установка куки[править | править вики-текст]
- •Атрибуты куки[править | править вики-текст]
- •Условия истечения срока хранения[править | править вики-текст]
- •Аутентификация[править | править вики-текст]
- •Настройка браузера[править | править вики-текст]
- •Приватность и сторонние куки[править | править вики-текст]
- •Недостатки куки[править | править вики-текст]
- •Неточная идентификация[править | править вики-текст]
- •Кража куки[править | править вики-текст]
- •Подмена куки[править | править вики-текст]
- •Межсайтовые куки[править | править вики-текст]
- •Нестабильность между клиентом и сервером[править | править вики-текст]
- •Срок действия куки[править | править вики-текст]
- •Альтернативы куки[править | править вики-текст]
- •Url (строка запроса)[править | править вики-текст]
- •Скрытые поля формы[править | править вики-текст]
- •Http-аутентификация[править | править вики-текст]
- •Сохранение на клиентской стороне[править | править вики-текст]
- •8. Сесії (сеанси) php, основна ідея використання сесій, початок сеансу, завершення сеансу. Ідентифікатор сесії. Змінні сесії
- •Открытие сессии
- •Регистрация переменных сессии
- •Закрытие сессии
- •Пример простой сессии
- •Передача идентификатора сессии
- •9. Багатофайлові сценарії php. Включення файлів, принцип роботи include, include_once, require, require_once
- •10. Створення класу, синтаксис опису. Створення об'єкта Классы и объекты в php
- •11. Успадкування, модель одиночного наслідування. Синтаксис опису класу-нащадка Наследование (программирование)
- •Типы наследования[править | править вики-текст] Простое наследование[править | править вики-текст]
- •Множественное наследование[править | править вики-текст]
- •Единый базовый класс[править | править вики-текст]
- •Наследование в языках программирования[править | править вики-текст]
- •Delphi (Object Pascal)[править | править вики-текст]
- •Python[править | править вики-текст]
- •Php[править | править вики-текст]
- •Objective-c[править | править вики-текст]
- •Java[править | править вики-текст]
- •C#[править | править вики-текст]
- •Ruby[править | править вики-текст]
- •JavaScript[править | править вики-текст]
- •Конструкторы и деструкторы[править | править вики-текст]
- •12. Абстрактний метод, абстрактний клас. Інтерфейс и, призначення, синтаксис опису, реалізація.
- •Содержание
- •Примеры[править | править вики-текст]
- •C#[править | править вики-текст]
- •Описание и использование интерфейсов[править | править вики-текст]
- •Интерфейсы и абстрактные классы[править | править вики-текст]
- •История[править | править вики-текст]
- •Назначение[править | править вики-текст]
- •Концепция[править | править вики-текст]
- •Наиболее частые ошибки[править | править вики-текст]
- •Строковые типы
- •Бинарные данные
- •Целые числа
- •Дробные числа
- •Типы даты и времени
- •Команды sql
- •Типы полей базы данных
- •15. Функції php управління з'єднанням з MySql. Функції php побудови і виконання запитів на сервері MySql. Функції php обробки результату запиту Функции php для работы с MySql
- •16. Область використання .Htaccess ответ 1: Защита сайта с помощью .Htaccess и .Htpasswd
- •Ответ 2:Защита сайта с помощью .Htaccess и .Htpasswd
- •Базовая аутентификация
- •Замечание
- •Замечание
- •Замечание
- •Замечание
- •Создание файла с паролями .Htpasswd
- •Замечание
- •Замечание
- •Защита файлов .Htpasswd
- •Создание файла .Htaccess
- •Пример файла .Htaccess
- •Внимание!
- •Файлы групп
Программное обеспечение[править | править вики-текст]
Всё программное обеспечение для работы с протоколом HTTP разделяется на три большие категории:
Серверы как основные поставщики услуг хранения и обработки информации (обработка запросов).
Клиенты — конечные потребители услуг сервера (отправка запроса).
Прокси для выполнения транспортных служб.
Для отличия конечных серверов от прокси в официальной документации используется термин «исходный сервер» (англ. origin server). Один и тот же программный продукт может одновременно выполнять функции клиента, сервера или посредника в зависимости от поставленных задач. В спецификациях протокола HTTP подробно описывается поведение для каждой из этих ролей.
Клиенты[править | править вики-текст]
Первоначально протокол HTTP разрабатывался для доступа к гипертекстовым документам Всемирной паутины. Поэтому основными реализациями клиентов являются браузеры (агенты пользователя). Для просмотра сохраненного содержимого сайтов на компьютере без соединения с Интернетом были придуманы офлайн-браузеры. При нестабильном соединении для загрузки больших файлов используются менеджеры закачек. Они позволяют в любое время докачать указанные файлы после потери соединения с веб-сервером. Виртуальные атласы, такие как Google Планета Земля и NASA World Wind, тоже используют HTTP.
Нередко протокол HTTP используется программами для скачивания обновлений.
Целый комплекс программ-роботов используется в поисковых системах Интернета. Среди них веб-пауки (краулеры), которые производят проход по гиперссылкам, составляют базу данных ресурсов серверов и сохраняют их содержимое для дальнейшего анализа.
Исходные серверы[править | править вики-текст]
См. также: Список веб-серверов
Основные реализации: Apache, Internet Information Services (IIS), nginx, Google Web Server, lighttpd.
Прокси-серверы[править | править вики-текст]
См. также: Список веб-серверов
Основные реализации: Squid, UserGate, Multiproxy, Naviscope, nginx.
История развития[править | править вики-текст]
HTTP/0.9
HTTP был предложен в марте 1991 года Тимом Бернерсом-Ли, работавшим тогда в CERN, как механизм для доступа к документам в Интернете и облегчения навигации посредством использования гипертекста. Самая ранняя версия протокола HTTP/0.9 была впервые опубликована в январе 1992г. (хотя реализация датируется 1990 годом). Спецификация протокола привела к упорядочению правил взаимодействия между клиентами и серверами HTTP, а также чёткому разделению функций между этими двумя компонентами. Были задокументированы основные синтаксические исемантические положения.
HTTP/1.0
В мае 1996 года для практической реализации HTTP был выпущен информационный документ RFC 1945, что послужило основой для реализации большинства компонентов HTTP/1.0.
HTTP/1.1
Текущая версия протокола, принята в июне 1999 года[2]. Новым в этой версии был режим «постоянного соединения»: TCP-соединение может оставаться открытым после отправки ответа на запрос, что позволяет посылать несколько запросов за одно соединение. Клиент теперь обязан посылать информацию об имени хоста, к которому он обращается, что сделало возможной более простую организацию виртуального хостинга.
HTTP/2
11 февраля 2015 года опубликованы финальные версии черновика следующей версии протокола. В отличие от предыдущих версий, протокол HTTP/2 является бинарным. Среди ключевых особенностей мультиплексирование запросов, расстановка приоритетов для запросов, сжатия заголовков, загрузка нескольких элементов параллельно, посредством одного TCP соединения, поддержка проактивных push уведомлений со стороны сервера.[3]
