Apache Tomcat là gì? Hướng dẫn cài đặt Apache Tomcat chi tiết
Đối với những lập trình viên lâu năm chắc hẳn khái niệm Apache Tomcat không còn quá xa lạ. Tuy nhiên với những người chỉ mới bắt đầu vào công việc lập trình thì khái niệm này còn khá mới. Vậy Apache Tomcat là gì? CùngBizfly Cloud tìm hiểu những thông tin chi tiết nhé.
Apache Tomcat là gì?
Apache Tomcat là một máy chủ ứng dụng web mã nguồn mở do Apache Software Foundation phát triển, chuyên dùng để triển khai và quản lý các ứng dụng web Java. Nó hoạt động như một servlet container, cung cấp môi trường chạy cho các Java Servlet và JavaServer Pages (JSP), giúp xử lý các yêu cầu HTTP và trả về nội dung động cho trình duyệt.

Apache Tomcat được phát triển bởi Apache Software Foundation
Bằng cách cài đặt các module mở rộng. Sau khi được viết, các dự án Java web sẽ được kiểm nghiệm hoàn tất trên môi trường localhost. Từ môi trường này, developer sẽ đóng gói dự án này thành file war và đẩy lên Tomcat Server để cung cấp cho người dùng.
Những ưu điểm khi sử dụng Apache Tomcat
- Dung lượng rất nhẹ, phù hợp nhiều loại cấu hình.
- Mã nguồn mở, dễ tiếp cận và có cộng đồng hỗ trợ nhiệt tình.
- Dễ cài đặt và cấu hình đơn giản.
- Hỗ trợ đa nền tảng: MacOS, Windows, Linux, BSD,…
- Cập nhật tính năng và vá lỗi thường xuyên.
Các câu lệnh thường gặp trong Apache Tomcat
- Khởi động Tomcat: Đối với máy Windows sẽ sử dụng câu lệnh startup.bat. Còn trên máy Linux/macOS sẽ dùng catalina.sh start hoặc startup.sh
- Dừng Tomcat: Sử dụng shutdown.bat trên Windows và catalina.sh stop hoặc shutdown.sh trên Linux/macOS
- Kiểm tra phiên bản Tomcat: nếu muốn kiểm tra phiên bản của Tomcat trên Windows, bạn dùng version.bat, còn trên Linux/macOS là catalina.sh version
- logs/: Chứa các file nhật ký, ví dụ catalina.out hoặc các file log theo ngày, dùng để xem thông báo và lỗi của Tomcat.
- conf/: Chứa các file cấu hình như:
- server.xml: File cấu hình chính của Tomcat, thiết lập máy chủ và cổng kết nối.
- web.xml: File cấu hình mặc định cho ứng dụng web.
- webapps/: Thư mục mặc định để triển khai các ứng dụng web, bạn có thể sao chép file WAR vào đây để triển khai.
- bin/: Chứa các file thực thi như startup.sh, shutdown.sh, và các công cụ quản lý khác.
- Manager App: Giao diện quản lý web mặc định, truy cập qua URL http://localhost:8080/manager để quản lý ứng dụng và thiết lập Tomcat.
Cách thực hoạt động của Apache Tomcat
Đầu tiên, Tomcat lắng nghe các yêu cầu từ cổng mạng đã được cấu hình (thường là cổng 80 cho HTTP hoặc 443 cho HTTPS). Khi nhận được yêu cầu, Tomcat xác định ứng dụng web cụ thể dựa trên tên miền hoặc đường dẫn, rồi chuyển yêu cầu đó đến Servlet Container – phần của Tomcat chịu trách nhiệm xử lý Servlet và JSP.
Trong quá trình này, Servlet Container sẽ tìm và tải các Servlet và JSP tương ứng, sau đó khởi tạo và chạy chúng để xử lý yêu cầu, thực hiện các tác vụ như truy xuất dữ liệu hoặc xử lý logic ứng dụng. Kết quả sau khi xử lý được gửi trở lại cho Tomcat, rồi cuối cùng, Tomcat sẽ chuyển kết quả này đến trình duyệt web hoặc ứng dụng gốc, hoàn tất quá trình xử lý yêu cầu.
Hướng dẫn cài đặt Apache Tomcat
1. Download Apache Tomcat
Apache Tomcat hiện đã có phiên bản 10, các bạn có thể tải về tại Apache Tomcat® - Apache Tomcat 10 Software Downloads.
Khi download các bạn nên chọn Binary Distribution và tải phiên bản đóng gói zip do phiên bản này không phụ thuộc hệ điều hành và có thể được cài đặt trên cả Linux và Windows.

Apache Tomcat phiên bản 10 với nhiều tính năng hấp dẫn
2. Cài đặt
Việc cài đặt Apache Tomcat rất đơn giản, bạn chỉ cần giải nén file zip đã tải về ở trên đến một thư mục cài đặt mong muốn. Ví dụ như D:\Program files trên Windows.

3. Cấu hình
Để cấu hình Tomcat, bước đầu tiên là trỏ đến vị trí của thư mục cài đặt Java Development Kit (JAVA_HOME), Với Tomcat 10 bạn cần đảm bảo máy tính của mình đã được cài đặt Java version >=8. Thông thường thư mục cài đặt của Java Development Kit trên Windows mặc định là C:\Program Files (x86)\Java\jdk-xx.xx.xx\ và trên Linux là /usr/lib/jvm/open-jdk
Mở file startup.bat trong thư mục bin của Tomcat (trong Linux là startup.sh) và thêm đoạn cấu hình JAVA_HOME như sau:
# Với Windows
set JAVA_HOME="C:\Program files (x86)\Java\jdk-xx.xx.xx"
# Với Linux/Ubuntu
JAVA_HOME="/usr/lib/jvm/open-jdk"

Cấu hình Tomcat thông qua thư mục cài đặt Java Development Kit (JAVA_HOME)
Lưu lại file startup và chuyển sang bước thứ hai là cấu hình users cho Tomcat. Để cấu hình một user cần 3 thông tin là username, password và roles Tomcat định nghĩa 4 vai trò (role) của các user như sau:
- manager-gui – cho phép truy cập HTML GUI và status pages.
- manager-script - cho phép truy cập text interface và status pages.
- manager-jmx - cho phép truy cập JMX proxy và status pages.
- manager-status – chỉ cho phép truy cập status pages.
Ta có thể cấp cho một user nhiều vai trò cùng lúc, ví dụ:
Mở file tomcat-users.xml trong thư mục conf và thêm thẻ XML trên trong cặp thẻ tomcat-users.
4. Khởi chạy Tomcat
Bạn có thể khởi chạy Tomcat từ file startup nói trên. Mặc định Tomcat chạy trên port 8080 của localhost (nhập localhost:8080 trên thanh địa chỉ trình duyệt).

Khởi chạy Tomcat từ file startup
Khi truy cập các tính năng như status page, bạn sẽ được yêu cầu đăng nhập bằng user đã định nghĩa ở trên.

Điểm khác biệt giữa Apache và Tomcat Server
Tiêu chí | Apache Web Server | Apache Tomcat Server |
Mục đích sử dụng | Máy chủ HTTP đa năng, phục vụ trang tĩnh và động (PHP, Python, Perl...) | Máy chủ ứng dụng Java, chạy Servlet và JSP |
Ngôn ngữ hỗ trợ | Nhiều ngôn ngữ (PHP, Python, Perl...) | Chỉ Java |
Xử lý nội dung tĩnh | Hiệu quả cao | Kém hơn Apache |
Xử lý nội dung động | Qua module (PHP, Ruby...) | Tốt cho Java Servlet và JSP |
Ngôn ngữ lập trình phát triển | C (native) | Java thuần túy |
Kiến trúc | Đa tiến trình, đa luồng | Đa luồng trên JVM |
Khả năng mở rộng và tích hợp | Hỗ trợ cân bằng tải, dễ tích hợp | Tích hợp tốt với Apache, chuyên Java |
Những trường hợp sử dụng Apache Tomcat
Apache Tomcat được sử dụng trong nhiều trường hợp phổ biến sau:
Lưu trữ và triển khai các ứng dụng web Java: Tomcat cung cấp môi trường chạy cho các Servlet và JSP, hỗ trợ phát triển và triển khai các ứng dụng web dựa trên Java một cách hiệu quả.
Môi trường phát triển và kiểm thử ứng dụng web Java: Các lập trình viên thường dùng Tomcat để phát triển, kiểm thử và gỡ lỗi các ứng dụng web Java cục bộ trước khi triển khai lên máy chủ chính thức.
Tích hợp với các nền tảng đám mây: Tomcat có thể tích hợp với các dịch vụ như Google Cloud (Compute Engine, Cloud SQL, Cloud Monitoring) để triển khai, lưu trữ dữ liệu và theo dõi hiệu suất ứng dụng web Java.
Cân bằng tải và mở rộng hệ thống: Tomcat hỗ trợ clustering và có thể phối hợp với các bộ cân bằng tải để phân phối lưu lượng truy cập, giúp tăng khả năng mở rộng và độ tin cậy cho hệ thống ứng dụng web.
Ứng dụng trong thương mại điện tử và các hệ thống cần xử lý lưu lượng lớn: Ví dụ, các doanh nghiệp như Walmart sử dụng Tomcat để xử lý hàng ngàn giao dịch mỗi ngày, đảm bảo hiệu suất và trải nghiệm người dùng tốt.
Đảm bảo bảo mật cho ứng dụng web: Tomcat cung cấp các cơ chế bảo mật như xác thực, phân quyền, SSL/TLS để bảo vệ ứng dụng và dữ liệu người dùng.
Những lưu ý khi cài Apache Tomcat
Lỗi không hiển thị được trang quản lý
Nếu sau khi cài đặt Tomcat bạn gặp những lỗi như the Page cannot be displayed hoặc Page cannot be found khi truy cập trang quản trị, vấn đề là server không thể tìm thấy trang đích. Lý do có thể là cấu hình sai hoặc url nhập chưa chính xác. Hãy thử nhập lại đường dẫn mặc định đầy đủ là http://localhost:8080.
Lỗi HTTP 404 hoặc Cannot connect to server
Thông báo bạn thấy có thể khác nhau tùy thuộc vào trình duyệt bạn đang sử dụng. Các thông báo lỗi này thường là vấn đề của bản thân Tomcat chứ không phải vấn đề với tệp, thư mục hoặc đường dẫn. Để giải quyết vấn đề này, bạn có thể thực hiện một số kiểm tra cơ bản cho những lỗi đơn giản:
1. Đảm bảo rằng Tomcat đang thực sự chạy. Trong windows bạn có thể kiểm tra tiến trình OpenJDK Platform binary từ Task Manager bằng tổ hợp phím CTRL + ALT + DEL và chọn tab Processes.
2. Đảm bảo rằng Tomcat đang chạy trên một cổng không được chương trình hoặc dịch vụ khác sử dụng trong thời điểm đó. Có thể cần phải thay đổi cổng mặc định của Tomcat là 8080 do Skype và nhiều chương trình khác cũng cố gắng sử dụng cổng 8080.
Mở thư mục cài đặt Tomcat và mở thư mục conf và chỉnh sửa các thiết lập connector trong file server.xml. Thay đổi các cổng hiện tại thành cổng khác trong khoảng 1024 đến 9999 và thử khởi động lại Tomcat.
Hi vọng với độ dài giới hạn của bài viết này, Bizfly Cloud đã giúp bạn có được cái nhìn tổng quan về Apache Tomcat và cách cài đặt công cụ này. Hãy tiếp tục theo dõi chúng tôi để cập nhật về Apache Tomcat và những công nghệ mới nhất mỗi ngày.