[LINUX:13662] ApacheJserv

New Message Reply About this list Date view Thread view Subject view Author view

From: OZGUR CENGIZ DEMIR (ocd@mail.koc.net)
Date: Thu 09 Mar 2000 - 16:30:28 EET


Selamlar,
Ekte Apache uzerinde Java Servlet calistirabilmek icin ApacheJServ
kurulumunun anlatildigi bir dokuman var, linux.org.tr uzerinde gerekli
yere konulursa yararli olabilir saniyorum. Servlet gelistirme icin
gelebilecek sorulari yanitlamaya calisirim,

Kolay Gelsin

Ozgur C. Demir
Koc.NET

        Bu belge, Apache Web sunucusu uzerinde Java Servlet eklentilerinin
calisabilmesi icin, Apache ekibi tarafindan yazilmis olan ApacheJServ modulunun
kurulumunu ve ayarlanmasini icerir.
        Bu belgenin icerigini anlayabilmek ve uygulayabilmek icin en azindan
* Temel Java Bilgisi
* Apache Kurulumu Hakkinda Bilgi
gerekmektedir.

1. Java Servlets Nedir ?
        Java Servlets, Javanin Web uygulamalarinda kullanilmak uzere
gelistirilmis olan siniflar (Java Classes) ve bu siniflar ile
gelistirilmis uygulamalara verilen genel bir isimdir.

2. Java Servlet Gelistirmek icin Gerekenler Nelerdir ?

* Bir Web Server
* JDK Ortami
* JDSK

3. JSDK Nedir ?
        JDSK, Javanin Servlet yazmak icin gelistirilmis olan API lerine
verilen isimdir. SUN in web sunucusundan ucretsiz olarak indirilebilir.
Dokumanin sonundaki ekte, bu dokumanda gecen butun yazilimlarin nereden
indirilebilecegi listelenecektir.

4. ApacheJServ Nedir ?
        ApacheJserv, Apache ile Java Servlet kullanabilmek icin
gelistirilen bir yazilimdir. ApacheJserv, Apache ye eklenen mod_jserv.c
adli module ile AJP adindaki bir protokol ile konusur ve kendisine
iletilen adresler ile iliskilendirilmis servlet'i calistirir, cevaplari
tekrar mod_jserv.c ye iletir. Iyi kavranmasi gereken bir konu, ApacheJserv
den bagimsiz ayri bir program oldugu ve ayri bir process olarak
calistigidir.

5. Kurulum
        Oncelikle kuracaginiz Unix makinada, JDK kurulu oldugunu
varsayalim. Daha sonra, kuracagimiz ApacheJserv surumunun, su anki son
duragan surum olan 1.1 oldugunu varsayalim. ONEMLI !!!! ApacheJserv,
beraberinde kullanilan paketlerin surumleri ile bagimlilik gosterdigi icin
mutlaka uyumlu surumler kullanilmalidir. Eger ApacheJserv 1.1
kullaniyorsaniz mutlaka diger paketleride bu dokumanda belirtilen
surumlerde kullaniniz. *Uygulamalarda JDK nin /usr/jdk altina kurulu
oldugu varsayilacaktir*

5.a JSDK Kurulumu

        ApacheJserv ile birlikte kurmaniz gereken JSDK surumu 2.0 olmalidir.
Bunun icin JSDK paketini indirdikten sonra yapmaniz gereken, bu file i
istediginiz bir yerde acmaniz, bu islem sonucunda jsdk adinda bir dizin
olusacaktir, bu dizindeki lib altdizini icerisinde jsdk.jar adinda bir
dosya bulunur, bu dosyayi CLASSPATH inize ekleyin.

Ornek Uygulama:

~:$ mv jsdk.2.0.tar.gz /usr
/usr:$ tar zxvf jsdk.2.0.tar.gz
/usr:$ cd jsdk2.0/lib ; ls
jsdk.jar
/usr/jsdk2.0/lib:$ echo $CLASSPATH
/usr/java/src.jar:/usr/jsdk/lib/jsdk.jar

5.b ApacheJserv ve Apache Kurulumu

        Apache ve ApacheJserv un kaynak kodlarini, bir dizin altina
kopyalayip, tar larini acin. Sonra, ilk olarak apache dizinine girerek,
gerekli .h dosyalarinin olusabilmesi icin bir kere configure komutunu
verin. Daha sonra, ApacheJserv dizinine gecerek, ApacheJserv un configure
script ini calistirin, bu script e apachenin, JSDK nin ve JDK nin diskde
bulundugu yeri belirtmeniz gerekecektir. Daha sonra make ve make install
komutlarini vererek derleme islemini baslatiniz. Daha sonra tekrar apache
dizinine donerek configure script ine mod_jserv.c modulunu kurdugunuzu
belirterek, yeniden calistiriniz. Daha sonra tekrar make ve make install
komutunu vererek, apache nin derlenemesini saglayiniz.

Ornek Uygulama:

~/JSERV:$ tar zxvf apache_1.3.12.tar.gz
~/JSERV:$ tar zxvf ApacheJServ-1.1.tar.gz
~/JSERV:$ ls
ApacheJServ-1.1 apache_1.3.12
~/JSERV:$ cd apache_1.3.12
~/JSERV/apache_1.3.12:$ configure
~/JSERV/apache_1.3.12:$ cd ../ApacheJServ-1.1
~/JSERV/ApacheJServ-1.1:$ configure --prefix=/usr/local/jserv
   --with-apache-src=../apache_1.3.12 --with-jdk-home=/usr/jdk
   --with-JSDK=/usr/jsdk2.0/lib/jsdk.jar --enable-EAPI
   --enable-compressed-jar --disable-debugging

~/JSERV/ApacheJServ-1.1:$ make
~/JSERV/ApacheJServ-1.1:$ make install
~/JSERV/ApacheJServ-1.1:$ cd ../apache_1.3.12
~/JSERV/apache_1.3.12:$ configure
   --activate-module=src/modules/jserv/libjserv.a
~/JSERV/apache_1.3.12:$ make
~/JSERV/apache_1.3.12:$ make install

5.c ApacheJserv ve Apache Ayarlari
        Bu asamada, gerekli derleme islemleri yapilmis oldu. Sira bunlarin
ayarlanmasinda, oncelikle /usr/local/jserv adresine gecin, burada logs
adinda bir dizin yaratin ve sonrada etc dizinine girin. Burada
jserv.conf, jserv.properties ve zone.properties gibi dosyalar
goreceksiniz. Oncelikle jserv.conf da bazi ayarlarin yapilmasi lazim,
bunlar
* ApJServLogFile NONE/logs/mod_jserv.log satiri,
  ApJServLogFile logs/mod_jserv.log seklinde degistiriniz.

* ApJServMount /servlets /root
  ApJServMount /servlet /root olan satirlari,

  #ApJServMount /servlets /root
  #ApJServMount /servlet /root seklinde degistiriniz.

Daha sonra zone.properties dosyasina girerek,

* repositories=NONE/servlets seklindeki satiri,
  repositories=/usr/local/apache/jsdocs/servlets seklinde degistiriniz.

Bu islemlerden sonra, /usr/local/apache dizinine gecerek apache nin
konfigurasyonuna baslayabiliriz,

Oncelikle kullanacagimiz IP Adresinin 192.168.13.1, VirtualHost unsa
www.servlets.org oldugunu varsayalim.

* /usr/local/apache dizininde jsdocs, /usr/local/apache/jsdocs dizininde
ise servlets adinda iki dizin acin. Bu dizin, sizin yazdiginiz Servlet
lari koyacaginiz dizindir. Dolayisi ile bu dizini /usr/local/apache/htdocs
dizini disina koyarak, download edilmelerini engelliyoruz.

* /usr/local/apache/conf/httpd.conf icerisinde, en alta

Include /usr/local/jserv/etc/jserv.conf satirini ekleyin.

* daha sonra
  <VirtualHost 192.168.13.1>
      ServerAdmin webmaster@servlets.org
      DocumentRoot /usr/local/apache/htdocs/servlets
      ServerName www.servlets.com
      <IfModule mod_jserv.c>
          ApJServDefaultHost localhost
          ApJServMount /exec /root
      </IfModule>
      ErrorLog logs/servlets-error_log
      CustomLog logs/servlets-access_log common
  </VirtualHost>

seklinde bir VirtualHost ekleyin, burada
DocumentRoot /usr/local/apache/htdocs/servlets satiri www.servlets.org
hostunun static sayfalarinin bulunacagi dizindir.
ApJServMount /exec /root satiri ise,
www.servlets.org/exec seklindeki isteklerin root adindaki zone'a
yonlenecegi (dizini /usr/local/apache/jsdocs/servlets olan zone) anlamina
geliyor.

6. Calisirma
        Bu ayarlari denemek icin,
/usr/local/apache/bin/apachectl start komutu ile apache yi baslatin,

ps -edf ciktisinda /bin/java
org.apache.jserv.JServ /usr/local/jserv/etc/jserv.properties seklinde bir
satir gormelisiniz,

daha sonra kurulumu yaptiginiz ApacheJServ-1.1 dizinindeki example dizini
altindaki Hello.class adindaki dosyayi

/usr/local/apache/jsdocs/servlets dizinine kopyalayin ve browser inizdan

http://www.servlets.org/exec/Hello adresini verin (www.servlets.org
yerine ayarladiginiz host adini yazin :) ), ekranda servlet in
calistigina dair bir mesaj gormelisiniz. Eger goremiyorsaniz, bana

ozgurcd@koc.net veya ocd@mail.koc.net adresinden ulasmaniz ve soru
sormaniz mumkun :)

Ozgur C. Demir
   Koc.Net










 
 Listeden cikmak icin:
          unsub linux
 mesajini listeci@bilkent.edu.tr'a gonderiniz.
   Lutfen Listeci icin MIME / HTML / Turkce Aksan kullanmayin.
  Liste arsivinin adresi: http://listweb.bilkent.edu.tr/


New Message Reply About this list Date view Thread view Subject view Author view

This archive was generated by hypermail 2b29 : Thu 09 Mar 2000 - 16:30:37 EET