{"id":37,"date":"2023-01-30T11:52:52","date_gmt":"2024-11-26T22:49:12","guid":{"rendered":""},"modified":"2025-02-02T00:46:14","modified_gmt":"2025-02-01T23:46:14","slug":"how-to-install-apache-tomcat-10-with-nginx-reverse-proxy-on-debian-12","status":"publish","type":"post","link":"https:\/\/netcloud24.com\/knowledgebase\/how-to-install-apache-tomcat-10-with-nginx-reverse-proxy-on-debian-12\/","title":{"rendered":"Linux VPS &#038; VPS Windows Setup Guide | NetCloud24 Apache Tomcat 10 with Nginx Reverse Proxy on Debian 12"},"content":{"rendered":"<h2>Introduction<\/h2>\n<p>Apache Tomcat is an open-source implementation of the Java Servlet, JavaServer Pages, Java Expression Language, and Java WebSocket technologies. Nginx is a high-performance web server that can also be used as a reverse proxy. This tutorial will guide you through the process of installing Apache Tomcat 10 with Nginx acting as a reverse proxy on Debian 12.<\/p>\n<h2>Prerequisites<\/h2>\n<p>Before you begin, ensure you have:<\/p>\n<ol>\n<li>A Debian 12 server<\/li>\n<li>Root or sudo access to the server<\/li>\n<li>Basic knowledge of Linux command line<\/li>\n<\/ol>\n<h2>Step 1: Install Java Development Kit (JDK)<\/h2>\n<p>Apache Tomcat requires Java to be installed on your system. Install OpenJDK 11:<\/p>\n<pre><code>sudo apt update\r\nsudo apt install default-jdk -y\r\n<\/code><\/pre>\n<h2>Step 2: Install Apache Tomcat<\/h2>\n<p>Download and install Apache Tomcat 10:<\/p>\n<pre><code>cd \/tmp\r\nwget https:\/\/downloads.apache.org\/tomcat\/tomcat-10\/v10.0.16\/bin\/apache-tomcat-10.0.16.tar.gz\r\nsudo tar -xf apache-tomcat-10.0.16.tar.gz -C \/opt\r\n<\/code><\/pre>\n<h2>Step 3: Configure Apache Tomcat<\/h2>\n<p>Configure Apache Tomcat to run as a service:<\/p>\n<pre><code>sudo nano \/etc\/systemd\/system\/tomcat.service\r\n<\/code><\/pre>\n<p>Add the following content:<\/p>\n<pre><code>[Unit]\r\nDescription=Apache Tomcat Web Application Container\r\nAfter=network.target\r\n\r\n[Service]\r\nType=forking\r\n\r\nEnvironment=JAVA_HOME=\/usr\/lib\/jvm\/default-java\r\nEnvironment=CATALINA_PID=\/opt\/apache-tomcat-10.0.16\/temp\/tomcat.pid\r\nEnvironment=CATALINA_HOME=\/opt\/apache-tomcat-10.0.16\r\nEnvironment=CATALINA_BASE=\/opt\/apache-tomcat-10.0.16\r\n\r\nExecStart=\/opt\/apache-tomcat-10.0.16\/bin\/startup.sh\r\nExecStop=\/opt\/apache-tomcat-10.0.16\/bin\/shutdown.sh\r\n\r\nUser=root\r\nGroup=root\r\nRestart=always\r\n\r\n[Install]\r\nWantedBy=multi-user.target\r\n<\/code><\/pre>\n<p>Save and close the file, then reload systemd:<\/p>\n<pre><code>sudo systemctl daemon-reload\r\n<\/code><\/pre>\n<p>Start and enable Apache Tomcat:<\/p>\n<pre><code>sudo systemctl start tomcat\r\nsudo systemctl enable tomcat\r\n<\/code><\/pre>\n<h2>Step 4: Install and Configure Nginx<\/h2>\n<p>Install Nginx:<\/p>\n<pre><code>sudo apt install nginx -y\r\n<\/code><\/pre>\n<p>Create a new server block configuration file:<\/p>\n<pre><code>sudo nano \/etc\/nginx\/sites-available\/tomcat\r\n<\/code><\/pre>\n<p>Add the following content:<\/p>\n<pre><code>server {\r\n    listen 80;\r\n    server_name your_domain.com;\r\n\r\n    location \/ {\r\n        proxy_pass http:\/\/localhost:8080\/;\r\n        proxy_set_header Host $host;\r\n        proxy_set_header X-Real-IP $remote_addr;\r\n        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\r\n        proxy_set_header X-Forwarded-Proto $scheme;\r\n    }\r\n}\r\n<\/code><\/pre>\n<p>Activate the server block by creating a symbolic link:<\/p>\n<pre><code>sudo ln -s \/etc\/nginx\/sites-available\/tomcat \/etc\/nginx\/sites-enabled\/\r\n<\/code><\/pre>\n<p>Test Nginx configuration for syntax errors:<\/p>\n<pre><code>sudo nginx -t\r\n<\/code><\/pre>\n<p>If the test is successful, reload Nginx to apply the changes:<\/p>\n<pre><code>sudo systemctl reload nginx\r\n<\/code><\/pre>\n<h2>Step 5: Access Apache Tomcat via Nginx<\/h2>\n<p>Open your web browser and navigate to <code>http:\/\/your_domain.com<\/code>. You should see the Apache Tomcat default landing page, indicating that Nginx is successfully acting as a reverse proxy for Apache Tomcat.<\/p>\n<h2>Conclusion<\/h2>\n<p>Congratulations! You have successfully installed Apache Tomcat 10 with Nginx acting as a reverse proxy on Debian 12. You can now deploy your Java web applications and access them via Nginx.<\/p>\n<p>\u00a0<\/p>\n<p><a href=\"https:\/\/netcloud24.com?language=english&amp;currency=4\">VPS Windows VPSServer<\/a><\/p>\n<p><a href=\"https:\/\/de.netcloud24.com\/\" target=\"_blank\">Windows VPS Deutschland<\/a><\/p>\n<p><a href=\"https:\/\/es.netcloud24.com\/\" target=\"_blank\">Windows VPS Espa\u00f1a<\/a><\/p>\n<p><a href=\"https:\/\/nl.netcloud24.com\/\" target=\"_blank\">Windows VPS Nederland<\/a><\/p>\n<p><a href=\"https:\/\/it.netcloud24.com\/\" target=\"_blank\">Windows VPS Italia<\/a><\/p>\n<p><a href=\"https:\/\/pt.netcloud24.com\/\" target=\"_blank\">Windows VPS Portugal<\/a><\/p>\n<p><a href=\"https:\/\/it.netcloud24.com\/\" target=\"_blank\">VPS Windows Italia<\/a><\/p>\n<p><a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\">Windows VPS<\/a><\/p>\n<p><a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\">Windows VPS<\/a><\/p>\n<p><a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\">Windows VPS Sverige<\/a><\/p>\n<p><a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\">Windows VPS Norge<\/a><\/p>\n<p><a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\">Windows VPS<\/a><\/p>\n<p><a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\">Windows VPS T\u00fcrkiye<\/a><\/p>\n<p><a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\">Windows RDS (Remote Desktop Services)<\/a><\/p>\n<p><a href=\"https:\/\/ie.netcloud24.com\" target=\"_blank\">Windows VPS<\/a><\/p>\n<div class=\"post-author-box\" style=\"border-top:1px solid #ddd;margin-top:20px;padding-top:15px;\">\n<p><strong>Author:<\/strong> \u0141ukasz Bodziony<\/p>\n<p><strong>Website:<\/strong> <a href=\"https:\/\/ca.netcloud24.com\" target=\"_blank\" rel=\"dofollow\">Windows VPS<\/a><\/p>\n<p><em>\u0141ukasz Bodziony is the CEO and founder of <a href=\"https:\/\/netcloud24.com\" target=\"_blank\" rel=\"dofollow\">NETCLOUD24<\/a>, a global VPS hosting brand proudly originating from Poland. With extensive experience in cloud computing, virtualization, and server management, he delivers high-performance <strong>Windows VPS<\/strong> and <strong>Remote Desktop Services (RDS)<\/strong> solutions to clients across Europe, North America, and beyond.<\/em><\/p>\n<p><em>His expertise covers a wide range of technologies, including <strong>Microsoft Azure<\/strong>, <strong>Proxmox VE<\/strong>, <strong>Amazon Web Services (AWS)<\/strong>, and numerous other virtualization and cloud platforms.<\/em><\/p>\n<p><em>Beyond running his hosting business, \u0141ukasz also provides <strong>professional paid server configuration and optimization services<\/strong> for companies and individuals. Outside of work, he is dedicated to caring for his children and building a secure future for them.<\/em><\/p>\n<p><em>If you are interested in working with him or need expert assistance with your hosting, cloud environment, or server setup, feel free to reach out via <a href=\"https:\/\/ca.netcloud24.com\" target=\"_blank\" rel=\"dofollow\">Windows VPS<\/a>.<\/em><\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Introduction Apache Tomcat is an open-source implementation of the Java Servlet, JavaServer Pages, Java Expression Language, and Java WebSocket technologies. Nginx is a high-performance web server that can\u2026<\/p>\n","protected":false},"author":1,"featured_media":3421,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_seopress_robots_primary_cat":"","_seopress_titles_title":"","_seopress_titles_desc":"","_seopress_robots_index":"","footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[],"tags":[14,12,11,23,20,21,22,17,7,8,6,10,18,19,15,24,16,5,13,9],"class_list":["post-37","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-cheapvps","tag-cloudvps","tag-hostingvps","tag-rds","tag-rdscal","tag-remotedesktop","tag-remotedesktopvps","tag-servervps","tag-ukvps","tag-virtualserver","tag-vpshosting","tag-vpsserver","tag-vpssolutions","tag-vpswindows","tag-vpswithwindows","tag-windowsrds","tag-windowsserver","tag-windowsvps","tag-windowsvpshosting","tag-windowsvpsuk"],"jetpack_publicize_connections":[],"_links":{"self":[{"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/posts\/37","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/comments?post=37"}],"version-history":[{"count":0,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/posts\/37\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/media\/3421"}],"wp:attachment":[{"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/media?parent=37"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/categories?post=37"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/netcloud24.com\/knowledgebase\/wp-json\/wp\/v2\/tags?post=37"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}