**Отчёт по заданию 1. Занятиe 1. “Введение в Web технологии.”.** Выполнил Бершауэр Владислав. Практическая работа №1 Ход работы: Установили kali linux: ![](https://i.imgur.com/rBTGA46.png) **Настройка подключения к репозиториям Docker.** Обновление существующих пакетов: ![](https://i.imgur.com/zJnGke9.png) Установка нескольких необходимых пакетов, которые позволяют apt использовать пакеты через HTTPS: ![](https://i.imgur.com/9ZUDrpc.png) Добавим ключ GPG для официального репозитория Docker в систему: ![](https://i.imgur.com/4iFZZXj.png) Добавим репозиторий Docker в источники APT: ![](https://i.imgur.com/TIYBx4e.png) Ещё раз обновим пакеты: ![](https://i.imgur.com/y9tmm9z.png) Убедимся, что установка будет выполняться с репозиториев Docker: ![](https://i.imgur.com/Y1AGg1P.png) Установка: ![](https://i.imgur.com/TTe8SOw.png) Статус докера: ![](https://i.imgur.com/tFbEYXg.png) ![](https://i.imgur.com/Q7HFLMR.png) Добавим в автозагрузку: ![](https://i.imgur.com/T3nQgRy.png) Установим docker-compose. Следующая команда загружает версию 1.26.0 и сохраняет исполняемый файл в каталоге /usr/local/bin/docker-compose, в результате чего данное программное обеспечение будет глобально доступно под именем docker-compose: ![](https://i.imgur.com/D5XOyKQ.png) Затем необходимо задать правильные разрешения, чтобы сделать команду docker-compose исполняемой: ![](https://i.imgur.com/hCwwTW6.png) Установка: ![](https://i.imgur.com/bYwoKj7.png) Версия: ![](https://i.imgur.com/rHztXWh.png) Установка веб приложения: ![](https://i.imgur.com/eveRlfL.png) Список образов в системе: ![](https://i.imgur.com/r0Cm0b7.png) Запустим приложение: ![](https://i.imgur.com/7boPHRo.png) Запущенные контейнеры: ![](https://i.imgur.com/47rkWmj.png) Главная страница сайта: ![](https://i.imgur.com/0VbAOcM.png) **Изучим запросы браузера к приложению и форме регистрации пользователей.** Зайдя на сайт, зайдем в отладку нажатием сочитания клавиш Ctrl+Shift+I: И перейдем во вкладку Network: ![](https://i.imgur.com/OfZMAf0.png) Здесь можем наблюдать GET-запросы (java скрипты, файлы jpg, таблица стилей). ![](https://i.imgur.com/bvL9x7Q.png) GET — метод для чтения данных с сайта. ![](https://i.imgur.com/gKPqnet.png) ![](https://i.imgur.com/UNpvSVp.png) Таблица стилей: ![](https://i.imgur.com/OGZizxS.png) Использование скриптов: ![](https://i.imgur.com/Gz6zdV9.png) Содержание одного из них: ![](https://i.imgur.com/I8XY10t.png) Запрос ресурса у сервера: ![](https://i.imgur.com/AQdqYEW.png) При смене языка выпадают файлы возможных языков и собственно выбранный язык: ![](https://i.imgur.com/x2D2OcP.png) ![](https://i.imgur.com/Yc99G5m.png) ![](https://i.imgur.com/NmBQvoK.png) POST — метод для отправки данных на сайт. Чаще всего с помощью метода POST передаются формы. Неправильно авторизуемся: ![](https://i.imgur.com/uXHOYXc.png) Результат: ![](https://i.imgur.com/uConF2W.png) Корректный вход: ![](https://i.imgur.com/99hj325.png) **Запрос к приложению через cURL.** Получаем код домашней странички. ![](https://i.imgur.com/WN2tDly.png) Запрос неверного входа. ![](https://i.imgur.com/MNzQ70g.png) **Запрос к приложению через powershell** ![](https://i.imgur.com/wdEyLGa.png) Invoke-WebRequest отправляет запросы HTTP, HTTPS, FTP и FILE на веб-страницу или веб-службу. Он анализирует ответ и возвращает коллекции форм, ссылок, изображений и других значимых HTML-элементов. Этот командлет впервые появился в Windows PowerShell 3.0. **Парсинг ответа приложения (файл выбранного языка).** Найдем путь: ![](https://i.imgur.com/GMl27QQ.png) Парсинг: ![](https://i.imgur.com/vaUZPo3.png) ![](https://i.imgur.com/YehjHcH.png)