„Здрасти, Амиго!“

"Здравей, Билаабо! Какво правим днес?"

„Днес ще ви кажа How да инсталирате уеб сървър Tomcat.“

Инсталирайте и конфигурирайте Tomcat - 1

"Какво е уеб сървър? Какво е обикновен сървър?"

"Има начин за взаимодействие на програмите, наречен връзка клиент-сървър. Сървърът обслужва клиентски заявки. Клиентите изпращат своите заявки към сървъра, а сървърът ги изпълнява и връща резултата."

"Представете си продавач, обслужващ клиенти в магазин. В този случай продавачът всъщност е сървърът, клиентите на магазина са клиентите, а продуктът, продаден от продавача, е резултат от обработката на заявката (резултатът от работата на сървъра) ."

„С други думи, сървърът е този, който обслужва заявките/поръчките/нуждите на клиента, нали?“

— Да.

„Добре, Howво е уеб сървър?“

„Уеб сървърът е програма, която обслужва заявки за страници от браузърите на потребителите.“

„Когато въведете конкретен URL address в браузър, заявката отива до сървъра, сървърът обработва заявката, генерира уеб page и я изпраща обратно към браузъра.“

Инсталирайте и конфигурирайте Tomcat - 2

"Уеб сървърът е сървърът. Браузърът е клиентът. URL addressът е заявката. Уеб pageта е резултат от обработката на заявката."

"Ах. Ситуацията бавно се изяснява. С други думи, уеб сървърът е програма(?), която генерира страници за браузъри. Нали?"

— Да.

„Да вземем обикновен URL address:“

Парсиране на URL addressи
http://codegym.cc/alpha/api/contacts ? _ _ _ _ userid=13&filter=none&page=3
Описание на части от URL
codegym.cc  е  името на домейна,  уникалното име (address) на компютър в Интернет
http  е  протоколът  за комуникация клиент-сървър
alpha/api/contacts  е заявката за уеб сървър or заявка за уеб page на сървъра
userid=13 &filter=none & page=3  е заявката за уеб сървър or заявка за уеб page на сървъра

„Вижте го. Взимаме компютър и го свързваме с интернет.“

„Тогава купуваме име на домейн за него.“

„След това стартираме уеб сървър на него.“

„Сега можете да изпращате заявки до този уеб сървър от всеки браузър, като въведете URL address с името на неговия домейн.“

"Мисля, че разбирам."

„Ще споделя една аналогия, за да направя всичко малко по-ясно.“

Разбор на URL разговори
Английски :// Jason / pass me folder ? номер=13
Описание на части от URL address
Джейсън  е уникалното име на компютър в Интернет
Английският  е протоколът за комуникация клиент-сървър
pass me folder  е заявката за уеб сървър or заявката за уеб page на сървъра
number=13  е низ с параметрите на заявката

"А. Това наистина е по-ясно. Благодаря."

"Това не е всичко. Понякога няколко уеб сървъра работят на един компютър. За да ги разграничат, им се присвояват номера."

„Мислете за домейна като за сграда. Ако едно семейство живее в сградата, тогава ще напишете нещо като «5 Third Anti-Martian Uprising St.» когато им изпращате писмо."

„Сега си представете, че няколко семейства живеят в сградата.

„Като жorщна сграда?“

"Точно така! Много е подобно. Благодаря за аналогията."

„Вътре в сградата има много апартаменти. Някои апартаменти са незаети. Някои са заети от уеб сървъри. И когато изпращате заявка до уеб сървър, трябва да посочите и номера на апартамента. В URL този номер се нарича пристанище."

"Например:"

http :// codegym.cc:80 / alpha/api/contacts ? userid=13&filter=none&page=3
http :// codegym.cc:8080 / alpha/api/contacts ? userid=13&filter=none&page=3
http :// codegym.cc:443 / alpha/api/contacts ? userid=13&filter=none&page=3

„В действителност всички сървъри са жorщни сгради. И всеки има 65 000 апартамента (пристанища).“

"Защо 65 000?"

"Два byteа се използват за указване на номер на порт. 65536 е най-голямото цяло число с дължина два byteа."

"Всеки протокол (http, https, ftp, ...) има свой собствен порт по подразбиране."

„Ако номерът на апартамента (порт) не е посочен, се използва портът по подразбиране на протокола.“

„Ако протоколът е http, тогава портът е 80. Ако протоколът е https, тогава портът е 443 и т.н.“

„С други думи, следните записи са еквивалентни:“

URL address Какво всъщност означава
http ://www.mail.google.com http ://www.mail.google.com: 80
http://codegym.cc _ http://codegym.cc : 80
http://codegym.cc/alpha _ http ://codegym.cc: 80 /алфа
https://codegym.cc/api?x _ https ://codegym.cc: 443 /api?x

„Ами ако портът е 444, но протоколът е https?“

„Вече ви казах. Ако портът не е посочен, той се определя въз основа на протокола. Ако е посочен, тогава се използва посоченият порт.“

"Виждам."

„Знаеш ли How хората понякога използват местоимения instead of имена: аз, ти, той, …?“

„Да, но хората по своята същност са странни. Опитвам се да не обръщам внимание на това.“

„Е, компютрите също имат име на домейн, което означава „аз“. Това е „localhost“.“

„Ако въведете localhost във вашия браузър, браузърът ще има достъп до вашия компютър.“

„И ако имате инсталиран уеб сървър, той ще изпрати уеб page до браузъра.“

"Страхотно! Искам да стартирам уеб сървър и да отварям страници в браузъра."

"Кажи ми How да го направя, Билаабо. Моля те!!! Ти си ми приятел, нали?"

— Билаабо би направил всичко за приятел.

"Слушайте."

Етап 1
Инсталирайте комплекта за разработка на Java (JDK)
Резултат
JDK е инсталиран

„Bilaabo, аз съм програмист от ниво 30. Инсталирах JDK преди много време!“

— Чудесно, тогава да продължим.

Стъпка 2
Изтеглете Tomcat 9
Съвет 1:
Използвайте Google
Съвет 2:
Официална уеб page на Apache Tomcat
Подсказка 3 (директна връзка за потребители на Windows):
Изтеглете Apache Tomcat

"Схванах го."

"Страхотен."

Стъпка 3
Инсталирайте Tomcat 9
Използвайте настройките за инсталиране по подразбиране.
Не променяйте нищо.
Екран 3
Инсталирайте и конфигурирайте Tomcat - 3
Екран 4
Инсталирайте и конфигурирайте Tomcat - 4

"Тук можете да зададете името и порта на уеб сървъра. По подразбиране е порт 8080.
Не променяйте нищо. Оставете всичко Howто е."

Екран 5
Инсталирайте и конфигурирайте Tomcat - 5

Посочете папката, в която е инсталиран JDK

Екран 6
Инсталирайте и конфигурирайте Tomcat - 6
Екран 7
Инсталирайте и конфигурирайте Tomcat - 7

"Да. Просто щракнах върху Напред и това е."

„Страхотно. Сега имате инсталиран и работещ уеб сървър Tomcat 9, който слуша заявки на порт 8080. Това е стандартният порт за разработка на софтуер.“

„Добре, значи имам Tomcat, но How мога да напиша програма за него?“

„Искам да генерира нещо интересно – няHowва готина уеб page.“

„Добре, ще ти кажа How да го направиш след кратка почивка.“