Tag Archives: Tomcat

شرح كيفية تثبيت خادم Apache Tomcat على Ubuntu

السلام عليكم ورحمة الله،

أهلا بكم في هذه التدوينة السريعة التي أقدم لكم فيها شرحا مفصلا عن كيفية تثبيت خادم Apache Tomcat 7 على توزيعة أوبونتو. الطريقة المقدمة هنا أُنجزت على توزيعة أوبنتو 12.04 وتحققتُ من صلاحيتها للإصدارات 11.10 و 11.04 و 10.10

فلنبدأ على بركة الله

كأول خطوة، ينبغي الذهاب إلى الرابط التالي http://tomcat.apache.org/download-70.cgi  . في القسم Core أسفل الصفحة ستجد عدة ملفات مضغوطة، بعضها للتثبيت على Windows، طبعا هذه لاتهمنا نحن معشرَ اللينكساويين . اختر  أحد الملفين المضغوطين حسب اختيارك. ( سأفترض أنك قمت باختيار صيغة tar.gz ). ضع الملف المضغوط في دليلك الشخصي.

افتح طرفية Terminal وقم بإدخال الأمر التالي، مع مراعاة رقم الإصدار (7.0.29  أثناء كتابة هذه التدوينة)

tar xvzf apache-tomcat-7.0.29.tar.gz

الأمر tar يستخدم لتجميع مجموعة من الملفات داخل مجلد واحد أو لفك ضغط ملف مضغوط (عبر الخيار x في سطر اﻷوامر السابق). الخيارات v و z وf هي لإظهار أسماء الملفات أثناء فك الضغط و تعيين نوعية الضغط (.gz) و لتمرير اسم الملف المراد فك ضغطه على التوالي.

بعد فك ضغط الملف أدخل الأمر التالي ( يجب أن تكون لديك صلاحيات root ). انتبه لإدخال اسم المجلد الصحيح (نفس اسم الملف في أمر tar أعلاه ولكن دون امتداد .tar.gz )

sudo mv apache-tomcat-7.0.29/ /usr/share/tomcat7

الخطوة الموالية هي تعديل متغيرات النظام، لذا قم بتنفيذ الأمر التالي

sudo gedit /etc/environment

بعدها سيظهر لك ملف نصي وبداخله مجموعة من المتغيرات وقيمها. عندي مثلا يظهر بالشكل التالي

PATH=”/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:$JAVA_HOME:$JRE_HOME”
LANGUAGE=”en”
LANG=”en_US.UTF-8″
LC_NUMERIC=”en_US.UTF-8″
LC_MEASUREMENT=”en_US.UTF-8″
JAVA_HOME=”/usr/lib/jvm/java-6-oracle”
JRE_HOME=”/usr/lib/jvm/java-6-oracle/jre”

تأكد من قيم متغيرات إصدارة جافا لديك JAVA_HOME و JRE_HOME  (قد تكون مختلفة عما هو موجود لدي). إذا لم تكن موجودةقم بإضافتها. JAVA_HOME تشير إلىمكان تثبيت ملفات جافا و JRE_HOME إلى المجلد الفرعي  jre  الموجود داخل دليل ملفات جافا.  في أغلب الحالات توجد ملفات تثبيت جافا في الدليل “/usr/lib” أو “/usr/local” (ابحث عن المجلد  jvm في الدليلين). قيم المتغيرات يجب أن تكون بين مزدوجتين “”. قم بإضافة JAVA_HOME$ و  JRE_HOME$ (رمز $ مهم ) إلى قيم المسار PATH الموجود في بداية الملف مفصولة عن بيقية القيم بنقطتين . مثلا إذا كان PATH=”/usr/local” قبل إضافة المتغيرين فإنه يجب أن يكون هكذا بعدها PATH=”/usr/local:$JAVA_HOME:$JRE_HOME” .

قيم متغيرات النظام جاهزة الآن، يمكننا إذن إعداد Tomcat الآن.
أدخل الأمر التالي في الطرفية (بعد حفظ الملف السابق)

sudo gedit /usr/share/tomcat7/bin/catalina.sh

أضف السطرين (نفس السطرين الذين قمت بإضافتهما سابقا إلى الملف environment) إلى الملف catalina.sh الذي قمت بفتحه للتو مباشرة بعد عبارة #!/bin/sh

JAVA_HOME=”/usr/lib/jvm/java-6-oracle”
JRE_HOME=”/usr/lib/jvm/java-6-oracle/jre”

احفظ الملف.

بالعودة إلى الطرفية نفذ الأمر التالي

sudo gedit /usr/share/tomcat7/conf/tomcat-users.xml

أفرغ الملف من محتواه و قم بنسخ لصق ما يلي

<?xml version=’1.0′ encoding=’utf-8′?>

<tomcat-users>
<role rolename=”manager-gui”/>
<role rolename=”manager-script”/>
<role rolename=”manager”/>
<role rolename=”admin-gui”/>
<role rolename=”admin-script”/>
<role rolename=”admin”/>

<user username=”admin” password=”admin” roles=”manager-gui,admin-gui,manager,admin,manager-script,admin-script”/>
</tomcat-users>

إذا كنت ترغب في أن يكون admin  اسم الدخول و admin كلمة السر يمكنك حفظ الملف و إغلاقه، وإلا عدل الملف بحيث تكتب اسم الدخول أمام username بين المزدوجتين مكان admin ، نفس الشيئ بالنسبة لكلمة السر (أمام password).
احفظ الملف وأغلقه.

الخطوة الأخير هي إطلاق Tomcat عن طريق الأمر

sudo /usr/share/tomcat7/bin/startup.sh

إذا كان كل شيئ سار على ما يرام فإن مُخرجات الطرفية ستكون شبيهة بما يلي

Using CATALINA_BASE:   /usr/share/tomcat7
Using CATALINA_HOME:   /usr/share/tomcat7
Using CATALINA_TMPDIR: /usr/share/tomcat7/temp
Using JRE_HOME:        /usr/lib/jvm/java-6-oracle
Using CLASSPATH:       /usr/share/tomcat7/bin/bootstrap.jar:/usr/share/tomcat7/bin/tomcat-juli.jar

عنوان الدخول إلى الواجهة الرئيسية للخادم هو http://localhost:8080/ ، وعنوان واجهة إدارة التطبيقات (Host mnager) هو http://localhost:8080/host-manager/html

أتمنى أن تكون هذه التدوينة قد ساعدتكم 🙂