HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p>Современные сайты разрабатываются на множестве языков с помощью разных технологий, но принципы их устройства одинаковые. Это определяется архитектурой веба. В его основе лежит протокол HTTP, с которым вы уже знакомы по одноименному курсу.</p>
1 <p>Современные сайты разрабатываются на множестве языков с помощью разных технологий, но принципы их устройства одинаковые. Это определяется архитектурой веба. В его основе лежит протокол HTTP, с которым вы уже знакомы по одноименному курсу.</p>
2 <p>Современный веб несколько сложнее из-за WebSocket. Это влияет на принципы разработки сайтов, которые активно его используют. Но WebSocket - не замена обычному способу взаимодействия, а дополнение, которое необходимо для некоторых ситуаций. К таким задачам относится любое взаимодействие в реальном времени, например, чаты или многопользовательские игры.</p>
2 <p>Современный веб несколько сложнее из-за WebSocket. Это влияет на принципы разработки сайтов, которые активно его используют. Но WebSocket - не замена обычному способу взаимодействия, а дополнение, которое необходимо для некоторых ситуаций. К таким задачам относится любое взаимодействие в реальном времени, например, чаты или многопользовательские игры.</p>
3 <p>Принцип взаимодействия с любым сайтом сводится к следующим шагам:</p>
3 <p>Принцип взаимодействия с любым сайтом сводится к следующим шагам:</p>
4 <ol><li>Пользователь запрашивает страницу сайта</li>
4 <ol><li>Пользователь запрашивает страницу сайта</li>
5 <li>Браузер выполняет HTTP-запрос к веб-серверу</li>
5 <li>Браузер выполняет HTTP-запрос к веб-серверу</li>
6 <li>Веб-сервер возвращает содержимое страницы в HTTP-ответе</li>
6 <li>Веб-сервер возвращает содержимое страницы в HTTP-ответе</li>
7 <li>Браузер отрисовывает страницу сайта</li>
7 <li>Браузер отрисовывает страницу сайта</li>
8 <li>Пользователь кликает по ссылке на сайте, и весь процесс повторяется снова</li>
8 <li>Пользователь кликает по ссылке на сайте, и весь процесс повторяется снова</li>
9 </ol><p>Каждый такой цикл включает в себя HTTP-сессию: HTTP-запрос и HTTP-ответ. Чтобы увидеть HTTP-сессию, нужно использовать утилиту curl:</p>
9 </ol><p>Каждый такой цикл включает в себя HTTP-сессию: HTTP-запрос и HTTP-ответ. Чтобы увидеть HTTP-сессию, нужно использовать утилиту curl:</p>
10 <p>Принцип взаимодействия не зависит от того, на чем написан сайт. С точки зрения сервера всегда есть запрос, который нужно обработать и вернуть ответ, например, в виде HTML. Каким будет HTML для конкретного запроса, определяется самим запросом - запрошенной страницей и различными параметрами HTTP, например, заголовками.</p>
10 <p>Принцип взаимодействия не зависит от того, на чем написан сайт. С точки зрения сервера всегда есть запрос, который нужно обработать и вернуть ответ, например, в виде HTML. Каким будет HTML для конкретного запроса, определяется самим запросом - запрошенной страницей и различными параметрами HTTP, например, заголовками.</p>
11 <p>В итоге код сайта представляет собой набор обработчиков разных страниц, которые принимают входящие запросы, формируют ответ и возвращают его. Ниже можно посмотреть примеры на разных языках. В них можно найти общую структуру всех примеров кода: функция-обработчик, привязанная к конкретной странице.</p>
11 <p>В итоге код сайта представляет собой набор обработчиков разных страниц, которые принимают входящие запросы, формируют ответ и возвращают его. Ниже можно посмотреть примеры на разных языках. В них можно найти общую структуру всех примеров кода: функция-обработчик, привязанная к конкретной странице.</p>
12 <p><strong>PHP</strong></p>
12 <p><strong>PHP</strong></p>
13 <p><strong>Ruby</strong></p>
13 <p><strong>Ruby</strong></p>
14 <p><strong>Python</strong></p>
14 <p><strong>Python</strong></p>
15 <p><strong>Java</strong></p>
15 <p><strong>Java</strong></p>
16 <p><strong>JavaScript</strong></p>
16 <p><strong>JavaScript</strong></p>
17 <p>Реальные сайты устроены значительно сложнее, но в основе лежит та связка запрос-ответ, которая была описана в этом уроке. Именно она определяет общую структуру любого сайта, написанного на любом языке.</p>
17 <p>Реальные сайты устроены значительно сложнее, но в основе лежит та связка запрос-ответ, которая была описана в этом уроке. Именно она определяет общую структуру любого сайта, написанного на любом языке.</p>