1. host
Після того, як Тім Бернерс-Лі придумав всесвітнє павутиння, HTML, HTTP та вебсервери, він вирішив ускладнити життя майбутнім вебпрограмістам і вигадав посилання, або URL. URL розшифровується як Universal Resource Locator.
Типове посилання встановлюється шаблоном:
protocol://host/path?query#anchor
Деякі з частин можуть бути відсутніми, але protocol і host потрібно вказувати завжди.
Protocol вказує ім'я протоколу, за допомогою якого взаємодіятимуть клієнт і сервер. Типові назви протоколів: HTTP, HTTPS, FTP, SSH, …
Host — це ім'я сервера мережі, до якого потрібно надіслати запит. Спочатку це була IP-адресаа, але люди швидко придумали імена (domain names), щоб нічого не запам'ятовувати. Ніби запам'ятати пару цифр так складно)
Спочатку жодного query не планувалося. Path вказував розташування HTML-файлу, який сервер повинен був віддати клієнту. Однак після того, як веб захопили аматори, вони швидко зрозуміли, що файли HTML можна динамічно створювати на стороні сервера. Тому в URL додали розділ query, в якому можна передати серверу купу корисної інформації.
Ну і нарешті anchor — це просто спеціальна мітка на HTML-сторінці, яка підказує браузеру, що сторінку потрібно не просто відобразити, а ще й проскролити її до певного місця, тобто мітки.
2. query & params
Розкажу ще трохи про query.
Частина посилання під назвою query починається одразу після знака питання і закінчується знаком # (або кінцем посилання). Інформація в query являє собою набір параметрів у такому вигляді:
name=value&name2=value2&nameN=valueN
URL не може містити пробілів та ще купу різних символів, тому всі підозрілі символи екрануються. Швидше за все, ти часто з таким стикався, коли копіював посилання і кидав його другу:
| width="300" | Символ | Кодування |
|---|---|---|
| 1 | пробіл | %20 |
| 2 | ! | %21 |
| 3 | # | %22 |
| 4 | $ | %24 |
| 5 | % | %25 |
| 6 | & | %26 |
| 7 | ' | %27 |
| 8 | * | %2A |
| 9 | + | %2B |
| 10 | , | %2C |
| 11 | / | %2F |
Докладніше на цю тему можна почитати за цим посиланням.
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ