Hướng dẫn tích hợp Apache với Tomcat sử dụng mod_jk để kết nối trên Ubuntu 14

Apache là máy chủ web phổ biến nhất hiện nay.nó là máy chủ web mã nguồn mở, do đó bạn có thể dễ dàng nhìn thấy mã số, điều chỉnh nó, tối ưu hóa nó, và sửa chữa các lỗi và lỗ hổng bảo mật. Các tính năng mới và các module cũng có thể được thêm vào.Nó có thể được sử dụng cho các trang web nhỏ của một hoặc hai trang, hoặc các trang web lớn của hàng trăm và hàng ngàn trang, phục vụ hàng triệu khách truy cập thường xuyên mỗi tháng. Nó có thể phục vụ cả nội dung động và tĩnh, và còn nhiều tính năng hữu ích khác nữa

Tomcat có thể được chạy như là một máy chủ độc lập . Tomcat cũng có thể được chạy như là một add-on cho Apache HTTP Server 

Sau đây chúng ta sẽ tích hợp Apache với Tomcat sử dụng mod_jk để kết nối

module mod_jk

Các mod_jk có thể thu được trong hai định dạng: nhị phân và mã nguồn. Tùy thuộc vào nền tảng mà bạn đang chạy máy chủ web của bạn trên, một phiên bản nhị phân của mod_jk có thể có sẵn. Đó là khuyến cáo để sử dụng phiên bản nhị phân nếu nó có sẵn.

Các mô-đun mod_jk đã được phát triển và thử nghiệm trên:

  • Linux, FreeBSD, AIX, HP-UX, MacOS X, Solaris và nên làm việc trên nền tảng Unix lớn của hỗ trợ Apache 1.3 và / hoặc 2.x
  • 0-i386 SP4 / SP5 / SP6a (nên có thể làm việc với các gói dịch vụ khác), Win2K và WinXP và Win98
  • Cygwin (cho đến khi bạn có một máy chủ apache và các công cụ autoconf / hỗ trợ automake)
  • Netware
  • i5 / OS V5R4 (Hệ thống I) với Apache HTTP Server 2.0.58. Hãy chắc chắn để có mới nhất của Apache PTF cài đặt.
  • Tomcat 3.2 đến Tomcat 8.

Các mod_jk yêu cầu hai thực thể:

  • mod_jk.xxx  - Các module Apache HTTP Server, tùy thuộc vào hệ điều hành của bạn, nó sẽ được mod_jk.so, mod_jk.nlm hoặc MOD_JK.SRVPGM.
  • workers.properties  - Một tập tin mô tả các máy chủ và sử dụng các cảng do người lao động (Tomcat quy trình). Một workers.properties mẫu có thể được tìm thấy trong thư mục conf trong nguồn tải xuống.

Cũng như với các module Apache HTTP Server khác, mod_jk nên được cài đặt trước trên các modules của Apache webserver của bạn: / usr / lib / apache và bạn nên cập nhật của bạn  httpd.conf  file.

I.Cài đặt Apache, Tomcat

Trước khi cài đặt chúng ta lên update lại hệ thống bằng lệnh sau  

# apt-get update -y

Cài đặt apache2 

#  apt-get install apache2 -y

Cài đặt Tomcat7

#  apt-get install tomcat7
#  apt-get install tomcat7-admin

Sử dụng trình duyệt truy cập vào httpd://localhost  để kiểm tra

Tạo thư mục để kiểm tra thử

# cd /var/lib/tomcat7/webapps/
# mkdir -p tomcat-web/maxserver

Tạo 1 file index.jsp

# nano tomcat-web/maxserver/index.jsp

Với nội dung như sau

<HTML>
 <HEAD>
  <TITLE>MAXSERVER</TITLE>
 </HEAD>
 <BODY>
  <H1>chuc mot ngay tot lanh !</H1>
  Today is: <%= new java.util.Date().toString() %>
 </BODY>
</HTML>

Truy cập vào đừng dẫn http://localhost:8080/tomcat-web/maxserver để kiểm tra

II.Cài đặt module mod_jk

# apt-get install libapache2-mod-jk -y

Ta chỉnh sửa file Server.xml

# nano /etc/tomcat7/server.xml

Bỏ dấu chú thích ở dòng sau ,cho phép các cổng chuyển hướng 8443 trên Tomcat

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

Tạo ra 1 file workers.properties cho Apache 

# nano /etc/apache2/workers.properties

Có nội dung như sau

# Define 1 real worker using ajp13

worker.list=worker1

# Set properties for worker (ajp13)

worker.worker1.type=ajp13

worker.worker1.host=localhost

worker.worker1.port=8009

Bây giờ chúng ta sẽ cấu hình để Apache sử dụng worker này

# nano /etc/apache2/mods-available/jk.conf

Chỉnh sửa đường dẫn cửa JkWorkersFile như sau

JkWorkersFile /etc/apache2/workers.properties

Cuối cùng để cấu hình URL Apache nên đi qua Tomcat 

Các bạn chỉ việc chèn dòng đường sau vào trong cấu hình web của các bạn như sau

<VirtualHost *: 80> 
.......................................
.......................................
JkMount / tomcat-web * worker1
</ VirtualHost *: 80>

Vd : Tôi có file cấu hình web như sau

# nano /etc/apache2/sites-enabled/000-default.conf

 

<VirtualHost *:80>

    ServerName www.maxserver.net
    ServerAlias maxserver.net
    DocumentRoot /var/lib/tomcat7/webapps
    

    <Directory "/var/lib/tomcat7/webapps">
                      Options Indexes FollowSymLinks
                      AllowOverride All
                      Order allow,deny
                      Allow from all
                      Require all granted
     </Directory>

JkMount /tomcat-web* worker1
</VirtualHost>

Bây giờ ta khởi động lại Apache ,Tomcat 

# service apache2 restart
# service tomcat7 restart

Truy cập vào trinh duyệt để kiểm tra 

http://localhost/tomcat-web/maxserver

Nó cũng làm việc tương tự như 

http://localhost:8080/tomcat-web/maxserver