JavaRush /Java блог /Random UA /tomcat – коротко для windows
Izhak
22 рівень
Москва

tomcat – коротко для windows

Стаття з групи Random UA
У мене виникло бажання встановити tomcat, і зробити кілька хостів для початку на локальному комп'ютері. слонОтже, спершу я з сайту встановив сервіс tomcat . Він елементарно налаштовується, але без докладного дослідження неясно, яких користувачів і з якими паролями треба забивати в нетбінс, щоб він скомпілював та залив проект. Тому я вирішив витратити час і скористатися тими описами, які легко знайти в інтернеті на запит «tomcat налаштування», або на сторінці tomcat. Отже, якщо ми не йдемо простим шляхом (надалі з'ясувалося, що і шлях, що лежить через установку інсталятором теж вірний), то послідовність буде наступною.
  1. З сайту http://tomcat.apache.org зберігаємо zip-архів, і розпаковуємо його в папку без без пробілів і будь-яких складних символів, наприклад, «E:\tomcat\apache-tomcat-8.0.15».

  2. Завантажуємо останню версію JDK з сайту оракл https://www.oracle.com і ставимо її теж у папку з назвою без пробілів (якщо так не зробити, і встановити в папку X:\Program Files\... , то потім, коли ми будемо правити батник, нам доведеться неявно вказувати ім'я папки, це не дуже добре, чому буде видно далі.

  3. Відкриваємо "e:\tomcat\apache-tomcat-8.0.15\bin". Бачимо багато батників та sh сценаріїв.

    Відкриваємо "catalina.bat". Там бачимо багато закоментованих рядків із змінними оточення, які мають бути оголошені, або які можна оголошувати, а можна й ні.

    Ті змінні, які мають бути оголошені, — це

    • set CATALINA_HOME="e:\tomcat\apache-tomcat-8.0.15"
    • set JAVA_HOME="e:\ProgramFiles\Java\jre1.8.0_25"

    причому бажано це зробити в окремому файлі з ім'ям setenv.bat, для цього просто в текстовому редакторі вбиваємо ці два рядки і зберігаємо файл з таким ім'ям в e:\tomcat\apache-tomcat-8.0.15\bin\

    Примітка: якщо папка з встановленим jre містить пробіли, то ім'я має складатися з максимум шести перших літер реальної назви папки, і якщо таке поєднання по алфавіту в диску перше, ~1, якщо друге, то ~2, і т.д.

    Наприклад, назва папки, всередині якої знаходиться jre, "C: Program Files JRE", а крім того є папка "C:places", тоді другий рядок в setenv.bat буде

    • set JAVA_HOME="e:\Progra~1\Java\jre1.8.0_25", або
    • set JAVA_HOME="e:\P~2\Java\jre1.8.0_25"

    Звичайно, це не дуже добре, особливо коли у вас дві папки “Program Files” та “Program Files (x86)”. У такому випадку, щоб назвати правильно папку з JRE, доведеться поекспериментувати ~1 або ~2.

  4. Пробуємо запустити, для цього із поточної директорії запускаємо cmd.exe, в ньому запускаємо startup.bat. Це нам дасть контроль над тим, що відбувається. Якщо все пішло добре, то запуститься вікно Java-програми в режимі консолі, в якому після запуску буде написано час старту, якщо щось пішло не так, наприклад, папки в setenv.bat вказані невірно, ми побачимо повідомлення про помилки.

  5. Якщо глобальні змінні налаштовані правильно, і запустилося вікно java - консолі, але якісь налаштування зроблено неправильно, то помилки можна подивитися в папці "e:\tomcat\apache-tomcat-8.0.15\logs\".

  6. Якщо пункт 4 виконаний повністю успішно, у вікні браузера можна набрати 127.0.0.1:8080 і у вікні буде вікно tomcat сервера.

  7. Але якщо ми захочемо увійти в налаштування Host Manager, і т. д., то нас попросять ввести логін і пароль. Взяти їх ніде, але в папці conf є файл tomcat-users.xml, який якщо відкрити, то спочатку здається правильним, але ролі і користувачі там взяті в коментар . Та й ролі, і користувачі там явно неправильні. Отже, що робити.

  8. Щоб відповісти на запитання, які ролі мають бути, та яких користувачів призначати, щоб увійти в адмінку, на сторінці 127.0.0.1:8080. Наприклад, про роль manager можна дізнатися на сторінці ttp://127.0.0.1:8080/docs/manager-howto.html, і замість одного користувача admin, як було раніше, тепер є два користувача: admin-gui та admin-script.

    Докладніше про роботу з паролями тут http://127.0.0.1:8080/docs/realm-howto.html

    Отже, відкриваємо файл conf\tomcat-user.xml і додаємо там після закоментованого блоку з логінами та паролями

    <!--
      NOTE:  By default, no user is included in the "manager-gui" role required
      to operate the "/manager/html" web application.  If you wish to use this app,
      you must define such a user - the username and password are arbitrary.
    -->
    <!--
      NOTE:  The sample user and role entries below are wrapped in a comment
      and thus are ignored when reading this file. Do not forget to remove
      <!.. ..> that surrounds them.
    -->
    <!--
      <role rolename="tomcat"/>
      <role rolename="role1"/>
      <user username="tomcat" password="tomcat" roles="tomcat"/>
      <user username="both" password="tomcat" roles="tomcat,role1"/>
      <user username="role1" password="tomcat" roles="role1"/>
    -->
      <role rolename = "admin-gui"/>
      <role rolename = "admin-script"/>
      <role rolename = "manager-gui"/>
      <role rolename = "manager-script"/>
      <role rolename = "manager-jne"/>
      <user username = "superadmin" password = "pass" roles="admin-gui, admin-script, manager-gui, manager-jne, manager-script" />
    </tomcat-users>

    Таким чином, ми отримаємо користувача superadmin із паролем pass.

  9. Про те, як налагоджувати роботу додатків і т. д.

  10. Тепер за допомогою скриптів shutdown.bat і startup.bat перезапускаємо сервер і можемо увійти в адмінку.

  11. Створюємо віртуальні хости. Для цього подивимося сюди http://wiki.apache.org/tomcat/TomcatDevelopmentVirtualHosts

  12. можна ще створити в адмінці посилання на хост (Це те саме, що ми зараз зробабо).

  13. При створенні нових записів у hosts для win8, спочатку копіюємо файл в іншу папку, там правимо, а потім пишемо назад. Після цього рестарт комп'ютера чи сервера не потрібний.

І на завершення у безкоштовній версії IntelliJ Idea не підтримує web, тому для початку можна скористатися нетбінсом. https://netbeans.org/kb/trails/java-ee_ru.html https://netbeans.org/kb/docs/web/ajax-quickstart_ua.html
Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ