Apache Tomcat (که قبلا با عنوان Jakarta Tomcat شناخته میشد) یک وب سرور اوپن سورس است که توسط موسسه آپاچی برای فراهم آوردن یک HTTP سرور Java یی توسعه یافت که این امکان را برای شما فراهم میکند که فایل های جاوا را به آسانی اجرا کنید و این بدان معناست که Tomcat یک سرور نرمال شبیه آپاچی یا انجین ایکس نیست، از آنجایی که هدف اصلی اش فراهم آوردن یک محیط وب خوب برای اجرا کردن اپلیکیشن های جاوا میباشد که وب سرورهای دیگر این امکان را ندارند.
اخیرا در 6 ام دسامبر 2018 آپاچی Tomcat به ورژن 9 (ورژن 9.0.14) رسید که اولین نسخه stable از سری 9.x.0 میباشد. ورژن 9 در Apache Tomcat با توسعه های بیشماری نسبت به ورژن 8 در Tomcat همراه است.
یکسری از تغییرات قابل توجه در این نسخه : پشتیبانی از Java Servlet 3.1، صفحات JavaServer 2.3، وب سوکت Java 1.0 و غیره میباشد. همچنین باگ های بیشماری رفع شده اند و همچنین تغییرات و اضافات دیگری در این نسخه اعمال شده است.
در این مقاله به نصب Apache Tomcat 9 روی RHEL/CentOS 7.0/6.x خواهیم پرداخت. برای Ubuntu میتوانید مقاله زیر را دنبال کنید.
نحوه نصب Apache Tomcat در Ubuntu (به زودی)
مرحله 1 : نصب و تنظیمات Java 8
قبل از اینکه نصب Tomcat را شروع کنید از نصب JAVA روی لینوکس تان برای اجرا کردن Tomcat مطمئن شوید. در غیر اینصورت آخرین ورژن Java 9 را نصب کنید یا از دستور yum زیر برای نصب جاوای موجود (ورژن 8) از ریپازیتوری های پیش فرض استفاده کنید.
به محض اینکه java نصب شد شما میتوانید ورژن آنرا با دستور زیر روی سیستم تان بررسی کنید.
نمونه خروجی :
مرحله 2 : نصب Apache Tomcat 9
بعد از نصب java روی سیستم تان زمان آن رسیده که آخرین ورژن Apache Tomcat (نسخه 9.0.14) که آخرین نسخه stable در حال حاضر میباشد را دانلود کنید. در صورتی که میخواهید از نسخه های جدیدتر مطلع شوید توصیه میشود که صفحه دانلود Apache را بررسی کنید.
اکنون آخرین ورژن Apache Tomcat 9 را با استفاده از دستور wget زیر دانلود کنید و همانند زیر آنرا نصب کنید.
نکته : ورژن را در دستورات بالا با ورژنی که خودتان دانلود کردید جایگزین کنید.
قبل از شروع سرویس Tomcat متغییر محیطی CATALINA_HOME را در سیستم تان با استفاده از دستور زیر تعریف کنید.
اکنون میتوانیم وب سرور Tomcat را با استفاده از اسکریپتی که توسط پکیج Tomcat فراهم آمده راه اندازی کنید.
نمونه خروجی :
اکنون Tomcat را از مرورگرتان باز کنید. از IP یا Domain تان به همراه پورت 8080 استفاده کنید (زیرا tomcat همیشه روی پورت 8080 اجرا میشود). به عنوان مثال mydomain.com:8080 که به جای mydomain.com از آدرس ip یا دامین خود استفاده کنید.
دایرکتوری پیش فرض برای فایل های Tomcat در /usr/local/tomcat9 قرار دارند، شما میتوانید فایل های کانفیگ را درون فولدر conf مشاهده کنید، صفحه اصلی که در بالا مشاهده میکنید هنگامیکه وب سایت تان را روی پورت 8080 باز کنید در مسیر /usr/local/tomcat9/webapps/ROOT/ قرار دارد.
مرحله 3 : تنظیمات Apache Tomcat 9
به صورت پیش فرض شما تنها قادر خواهید بود به صفحه پیش فرض Tomcat دسترسی داشته باشید. برای دسترسی به admin و دیگر بخش ها مانند Server Status, Manager App و Host Manager شما نیاز دارید که user account برای ادمین و مدیران را کانفیگ کنید.
برای انجام آن شما نیاز دارید که فایل "tomcat-users.xml" را که در دایرکتوری /usr/local/tomcat9/conf قرار دارد ویرایش کنید.
تنظیم User Accounts در Tomcat
به طور مثال برای اختصاص دادن نقش manager-gui به یک کاربر به نام linuxzone و پسورد t$cm1n1 خط زیر را به فایل کانفیگ و درون قسمت مورد نظر اضافه کنید.
مشابها شما میتوانید همچنین نقش admin-gui را به یک کاربر ادمین به نام admin و با پسورد admin همانند زیر اضافه کنید.
بعد از تنظیمات ادمین و نقش های مدیریتی tomcat را restart کنید و سپس تلاش کنید که به بخش admin دسترسی پیدا کنید.
سپس روی تب Server Status کلیک کنید، از شما خواسته میشود که یوزر و پسورد وارد کنید. username و password که در بالا به فایل کانفیگ اضافه کردید را وارد نمایید.
به محض اینکه یوزر و پسورد را وارد کردید صفحه ای شبیه به زیر را مشاهده خواهید کرد.
تغییر پورت Apache Tomcat
اگر بخواهید Tomcat را در روی پورت متفاوتی همانند پورت 80 اجرا کنید باید فایل server.xml را در مسیر ‘/usr/local/tomcat9/conf/‘ ویرایش کنید. قبل از تغییر پورت از متوقف کردن سرویس Tomcat با استفاده از دستور زیر مطمئن شوید.
اکنون فایل server.xml را با استفاده از ادیتور vi/vim باز کنید.
اکنون Connector port را سرچ کنید و مقدار آنرا از 8080 به 80 یا هر مقداری که مد نظرتان هست تغییر دهید.
برای ذخیره فایل و restart کردن سرویس Apache Tomcat دستور زیر را اجرا کنید.
اکنون سرور شما روی پورت 80 در حال اجراست.
شما تمام دستورات بالا را باید تحت کاربر root اجرا کنید، اگر که با یوزر root نباشید آنها کار نخواهند کرد زیرا ما در دایرکتوری /usr/local کار میکنیم که owner این دایرکتوری تنها root میباشد. اگر بخواهید میتوانید سرور را با یک کاربر نرمال اجرا کنید اما شما مجبور خواهید بود که از فولدر HOME خود به عنوان یک محیط کاری برای download, extract و اجرا کردن سرور Apache Tomcat استفاده کنید.
برای دریافت یکسری اطلاعات درباره سرور Tomcat در حال اجرا دستور زیر را اجرا کنید.
نمونه خروجی :
اکنون شما میتوانید اپلیکیشن های بر اساس جاوا را تحت Apache Tomcat 9 استفاده کنید. برای دریافت اطلاعات بیشتر درباره نحوه استفاده از اپلیکیشن ها و ایجاد ویرچوال هاست ها توصیه میشود داکیومنت های رسمی Tomcat را بررسی کنید.
اخیرا در 6 ام دسامبر 2018 آپاچی Tomcat به ورژن 9 (ورژن 9.0.14) رسید که اولین نسخه stable از سری 9.x.0 میباشد. ورژن 9 در Apache Tomcat با توسعه های بیشماری نسبت به ورژن 8 در Tomcat همراه است.
یکسری از تغییرات قابل توجه در این نسخه : پشتیبانی از Java Servlet 3.1، صفحات JavaServer 2.3، وب سوکت Java 1.0 و غیره میباشد. همچنین باگ های بیشماری رفع شده اند و همچنین تغییرات و اضافات دیگری در این نسخه اعمال شده است.
در این مقاله به نصب Apache Tomcat 9 روی RHEL/CentOS 7.0/6.x خواهیم پرداخت. برای Ubuntu میتوانید مقاله زیر را دنبال کنید.
نحوه نصب Apache Tomcat در Ubuntu (به زودی)
مرحله 1 : نصب و تنظیمات Java 8
قبل از اینکه نصب Tomcat را شروع کنید از نصب JAVA روی لینوکس تان برای اجرا کردن Tomcat مطمئن شوید. در غیر اینصورت آخرین ورژن Java 9 را نصب کنید یا از دستور yum زیر برای نصب جاوای موجود (ورژن 8) از ریپازیتوری های پیش فرض استفاده کنید.
کد PHP:
# yum install java-1.8.0
کد PHP:
# java -version
نمونه خروجی :
کد PHP:
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
مرحله 2 : نصب Apache Tomcat 9
بعد از نصب java روی سیستم تان زمان آن رسیده که آخرین ورژن Apache Tomcat (نسخه 9.0.14) که آخرین نسخه stable در حال حاضر میباشد را دانلود کنید. در صورتی که میخواهید از نسخه های جدیدتر مطلع شوید توصیه میشود که صفحه دانلود Apache را بررسی کنید.
اکنون آخرین ورژن Apache Tomcat 9 را با استفاده از دستور wget زیر دانلود کنید و همانند زیر آنرا نصب کنید.
کد PHP:
# cd /usr/local
# wget http://www-us.apache.org/dist/tomcat/tomcat-9/v9.0.14/bin/apache-tomcat-9.0.14.tar.gz
# tar -xvf apache-tomcat-9.0.14.tar.gz
# mv apache-tomcat-9.0.14 tomcat9
قبل از شروع سرویس Tomcat متغییر محیطی CATALINA_HOME را در سیستم تان با استفاده از دستور زیر تعریف کنید.
کد PHP:
# echo "export CATALINA_HOME="/usr/local/tomcat9"" >> ~/.bashrc
# source ~/.bashrc
کد PHP:
# cd /usr/local/tomcat9/bin
# ./startup.sh
نمونه خروجی :
کد PHP:
Using CATALINA_BASE: /usr/local/tomcat9
Using CATALINA_HOME: /usr/local/tomcat9
Using CATALINA_TMPDIR: /usr/local/tomcat9/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat9/bin/bootstrap.jar:/usr/local/tomcat9/bin/tomcat-juli.jar
Tomcat started.
کد PHP:
http://Your-IP-Address:8080
OR
http://Your-Domain.com:8080
دایرکتوری پیش فرض برای فایل های Tomcat در /usr/local/tomcat9 قرار دارند، شما میتوانید فایل های کانفیگ را درون فولدر conf مشاهده کنید، صفحه اصلی که در بالا مشاهده میکنید هنگامیکه وب سایت تان را روی پورت 8080 باز کنید در مسیر /usr/local/tomcat9/webapps/ROOT/ قرار دارد.
مرحله 3 : تنظیمات Apache Tomcat 9
به صورت پیش فرض شما تنها قادر خواهید بود به صفحه پیش فرض Tomcat دسترسی داشته باشید. برای دسترسی به admin و دیگر بخش ها مانند Server Status, Manager App و Host Manager شما نیاز دارید که user account برای ادمین و مدیران را کانفیگ کنید.
برای انجام آن شما نیاز دارید که فایل "tomcat-users.xml" را که در دایرکتوری /usr/local/tomcat9/conf قرار دارد ویرایش کنید.
تنظیم User Accounts در Tomcat
به طور مثال برای اختصاص دادن نقش manager-gui به یک کاربر به نام linuxzone و پسورد t$cm1n1 خط زیر را به فایل کانفیگ و درون قسمت مورد نظر اضافه کنید.
کد PHP:
# vi /usr/local/tomcat9/conf/tomcat-users.xml
کد PHP:
<role rolename="manager-gui"/>
<user username="linuxzone" password="t$cm1n1" roles="manager-gui"/>
کد PHP:
<role rolename="admin-gui"/>
<user username="admin" password="adm!n" roles="admin-gui"/>
بعد از تنظیمات ادمین و نقش های مدیریتی tomcat را restart کنید و سپس تلاش کنید که به بخش admin دسترسی پیدا کنید.
کد PHP:
./shutdown.sh
./startup.sh
به محض اینکه یوزر و پسورد را وارد کردید صفحه ای شبیه به زیر را مشاهده خواهید کرد.
تغییر پورت Apache Tomcat
اگر بخواهید Tomcat را در روی پورت متفاوتی همانند پورت 80 اجرا کنید باید فایل server.xml را در مسیر ‘/usr/local/tomcat9/conf/‘ ویرایش کنید. قبل از تغییر پورت از متوقف کردن سرویس Tomcat با استفاده از دستور زیر مطمئن شوید.
کد PHP:
# /usr/local/tomcat9/bin/shutdown.sh
کد PHP:
# vi /usr/local/tomcat9/conf/server.xml
برای ذخیره فایل و restart کردن سرویس Apache Tomcat دستور زیر را اجرا کنید.
کد PHP:
# /usr/local/tomcat9/bin/startup.sh
شما تمام دستورات بالا را باید تحت کاربر root اجرا کنید، اگر که با یوزر root نباشید آنها کار نخواهند کرد زیرا ما در دایرکتوری /usr/local کار میکنیم که owner این دایرکتوری تنها root میباشد. اگر بخواهید میتوانید سرور را با یک کاربر نرمال اجرا کنید اما شما مجبور خواهید بود که از فولدر HOME خود به عنوان یک محیط کاری برای download, extract و اجرا کردن سرور Apache Tomcat استفاده کنید.
برای دریافت یکسری اطلاعات درباره سرور Tomcat در حال اجرا دستور زیر را اجرا کنید.
کد PHP:
/usr/local/tomcat9/bin/version.sh
نمونه خروجی :
کد PHP:
[root@dhcppc1 bin]# /usr/local/tomcat9/bin/version.sh
Using CATALINA_BASE: /usr/local/tomcat9
Using CATALINA_HOME: /usr/local/tomcat9
Using CATALINA_TMPDIR: /usr/local/tomcat9/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat9/bin/bootstrap.jar:/usr/local/tomcat9/bin/tomcat-juli.jar
Server version: Apache Tomcat/9.0.14
Server built: Dec 6 2018 21:13:53 UTC
Server number: 9.0.14.0
OS Name: Linux
OS Version: 3.10.0-957.5.1.el7.x86_64
Architecture: amd64
JVM Version: 1.8.0_191-b12
JVM Vendor: Oracle Corporation
[root@dhcppc1 bin]#