Avatar billede Slettet bruger
23. juni 2004 - 00:02 Der er 31 kommentarer og
1 løsning

Apache og Tomcat

Hej,

Jeg har nu i flere aftener i træk forsøgt at få Apache 2, Tomcat 4 og Virtual Host til at spille sammen. Det er endnu ikke lykkedes mig.
Jeg har fundet mange forskellige how-to og tutorial på nettet, men endnu er det ikke lykkedes mig at få det til at spille sammen.
Er der nogen af jer der har Apache, Tomcat og Virtual Host oppe og køre på en server og som VED at det virker, så vil jeg meget, meget gerne have noget hjælp. Jeg er ved at være noget desperat.
Avatar billede arne_v Ekspert
23. juni 2004 - 08:25 #1
Jeg har leget lidt med disse ting.

Groft sagt kan man dele opgaven op i 4 del opgaver:

1)  få virtal hosts til at virke i Apache (static html port 80 no Tomcat)
    via httpd.conf

2)  få virtual host til at virke i Tomcat (port 8080 no Apache) via server.xml

3)  få Apache-Tomcat til at virke med mod_jk på port 8009

4)  få #3 til at virke med virtual hosts

Hvor langt er du nået i processen ?
Avatar billede Slettet bruger
23. juni 2004 - 09:24 #2
Hmm, jeg har nok grebet det lidt baglæns an :-)
Jeg har startet med at prøve at få tomcat og apache til at køre sammen, hvilket er lykkedes nogenlunde. Jeg har sat Tomcat op på port 8080 og apache på port 80 og jeg kan nu få fat i Tomcat via port 80. Ergo er der et eller andet der virker nogenlunde
Det lykkedes mig sent i går aftes at få Virtual Host til at virke på Apache, men ikke med JSP support.

Et forslag til hvad jeg mangler ??

Det var forresten ikke specielt nemt at få Apache og Tomcat til at snakke sammen, der findes flere forskellige måder at gøre det på og mange af dem virker ikke.
Avatar billede arne_v Ekspert
23. juni 2004 - 10:35 #3
Jeg har altid bruge mod_jk og AJP på port 8009.

Bruger du den ?
Avatar billede arne_v Ekspert
23. juni 2004 - 10:35 #4
Hvis du også bruger den så er det vist bare et spørgsmål om at lave jkmount indeni
virtualhost tagget i apache config.
Avatar billede Slettet bruger
23. juni 2004 - 10:57 #5
Jeg har så brugt mod_jk2 mener jeg den hedder. Jeg er på arbejde lige p.t. så jeg kan ikke lige tjekke om det er port 8009, men det mener jeg det er.
Lad os lige gå ud fra at det er port 8009 og at det virker som det skal :-)
Hvordan skal min <virtual host> så se ud i både Apache og Tomcat ?
Avatar billede arne_v Ekspert
23. juni 2004 - 11:02 #6
mod_jk2 har erstattet mod_jk - og det er faktisk den der bruger port 8009
(AJP 1.2 er 8007 og AJP 1.3 er 8009 hvis jeg husker rigtigt).

Grib det systematisk an:

1)  definer virtual host i Tomcat server.xml (forskellige host tags) og
    check at det virker direkte på port 8080

2)  så flytter du de relevante jkmount ind i virtualhost blokkene
    i Apache httpd.conf
Avatar billede arne_v Ekspert
23. juni 2004 - 11:02 #7
Jeg kan godt prøve at lave et eksempel.

I aften.
Avatar billede Slettet bruger
23. juni 2004 - 11:24 #8
Jeg skal prøve at kigge på det igen, men du må MEGET gerne lave et eksempel til mig.
Har du meget erfaring med Apache/Tomcat ??
Avatar billede arne_v Ekspert
23. juni 2004 - 11:30 #9
Jeg har rigtig meget erfaring med Tomcat standalone.

Og lidt erfaring med Apache-Tomcat. Jeg plejer ihvertfald at kunne få
det til at virke. Jeg har prøvet det på både Windows, Linux og VMS.
Avatar billede Slettet bruger
23. juni 2004 - 14:54 #10
Det lyder godt, jeg håber at du vil hjælpe mig med at få skovlen under Apache-Tomcat. Jeg tror at jeg indtil videre har brugt ca. 15-20 timer. Det er lige før at jeg vender tilbage til Resin igen, men jeg har et par kunder som gerne vil afvikle noget PHP og have lidt statistik.
Hvordan kører Tomcat som standalone ??

P.S. Jeg har ikke set/hørt noget fra Disky længe...?
Avatar billede arne_v Ekspert
23. juni 2004 - 15:01 #11
Default Tomcat config kører HTTP connector på port 8080. Så man kan bare
bruge http://xxx:8080/app/side.jsp (eller ændre den til at lytte på port 80, hvis
den er ledig).

Disky er vist droppet ud af Eksperten.
Avatar billede Slettet bruger
23. juni 2004 - 16:39 #12
Det var mere ang. performance jeg tænkte på. Jeg har hørt lidt dårligt om Tomcat som standalone. Den skulle være langsom, ustabil o.s.v. i den stil
Avatar billede arne_v Ekspert
23. juni 2004 - 16:42 #13
Med hensyn til performance se f.eks. http://www.eksperten.dk/spm/512498
Avatar billede Slettet bruger
23. juni 2004 - 16:55 #14
Jeg har et stykke tid kørt Resin som standalone server og engentligt været meget godt tilfreds med den. Hvis det går helt galt med Apache og Tomcat så kunne det jo være at jeg bare skal nøjes med Tomcat. Men jeg vil stadig meget gerne se et eksempel fra dig Arne!
Avatar billede arne_v Ekspert
23. juni 2004 - 17:06 #15
Det kommer i aften.

De 2 primære grunde til at køre Apache/IIS foran en JSP/Servlet engine er:

1)  en gammeldages web server er mere effektiv til at sende statisk content
    (html, gif, zip etc.) ud til browser

2)  man kan få hardware SSL accelerator kort med drivere til Apache og IIS
    hvilket kan speede HTTPS meget op
Avatar billede arne_v Ekspert
23. juni 2004 - 21:18 #16
httpd.conf
----------

Include conf/mod_jk.conf

<VirtualHost *>
    DocumentRoot D:\foobar
    ServerName www.foobar.dk
    JkMount /*.jsp ajp13
</VirtualHost>

mod_jk.conf
-----------

LoadModule jk_module modules/mod_jk-1327.so
<IfModule mod_jk.c>
JkWorkersFile conf/workers.properties
JkLogFile  logs/jk.log
JkLogLevel warn
</IfModule>

workers.properties
------------------

workers.tomcat_home=/jakarta/tomcat-4.1.24
workers.java_home=/SUNJava/jdk1.3.1
ps=/
worker.list=ajp13
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13

server.xml
----------

      <Host name="www.foobar.dk" debug="0" appBase="D:\foobarapps" unpackWARs="true" autoDeploy="true">
      </Host>

file structure
--------------

D:\>dir foobar /s
Volume in drive D is ARNEPC2_D
Volume Serial Number is FC15-43CC

Directory of D:\foobar

23/06/2004  20:59      <DIR>          .
23/06/2004  20:59      <DIR>          ..
23/06/2004  20:59                    9 index.html
              1 File(s)              9 bytes

D:\>dir foobarapps /s
Volume in drive D is ARNEPC2_D
Volume Serial Number is FC15-43CC

Directory of D:\foobarapps

23/06/2004  21:11      <DIR>          .
23/06/2004  21:11      <DIR>          ..
23/06/2004  21:12      <DIR>          ROOT
              0 File(s)              0 bytes

Directory of D:\foobarapps\ROOT

23/06/2004  21:12      <DIR>          .
23/06/2004  21:12      <DIR>          ..
23/06/2004  21:12                  11 index.jsp
23/06/2004  21:12      <DIR>          WEB-INF
              1 File(s)            11 bytes

Directory of D:\foobarapps\ROOT\WEB-INF

23/06/2004  21:12      <DIR>          .
23/06/2004  21:12      <DIR>          ..
23/06/2004  21:12                  300 web.xml
              1 File(s)            300 bytes
Avatar billede arne_v Ekspert
23. juni 2004 - 21:18 #18
Jeg er lidt bagefter med nogle software versioner, men ...
Avatar billede Slettet bruger
23. juni 2004 - 21:52 #19
Indtil videre har jeg lige en kommentar, hvor skal "Include conf/mod_jk.conf" stå henne ??
Avatar billede arne_v Ekspert
23. juni 2004 - 21:55 #20
Bare ovenover brugen af jkmount.

Du kan også helt droppe include og bare hive linierne direkte ind i httpd.conf
Avatar billede Slettet bruger
23. juni 2004 - 22:04 #21
Hurtigt svar! ;-)
Næste problem:

Jeg bruger:

Include conf/mod_jk.conf

"<VirtualHost *>
    DocumentRoot c:\webserver\root\helloworld_1.dk
    ServerName www.helloworld1.dk
    JkMount /*.jsp ajp13
</VirtualHost>"

hvilket jeg tror er med til at give:


"c:\webserver\Apache2\bin>apache.exe -t
Syntax error on line 982 of C:/webserver/Apache2/conf/httpd.conf:
Invalid command 'JkMount', perhaps mis-spelled or defined by a module not includ
ed in the server configuration"

Mangler der noget eller mangler jeg et modul ?
Avatar billede arne_v Ekspert
23. juni 2004 - 22:07 #22
Indeholder din httpd.conf eller mod_jk.conf den her:

LoadModule jk_module modules/mod_jk-1327.so
Avatar billede Slettet bruger
23. juni 2004 - 22:12 #23
Jeg har den her i mod_jk.conf:

LoadModule jk2_module modules/mod_jk2_2.0.49.dll (tester på windows 2003 server)
Avatar billede arne_v Ekspert
23. juni 2004 - 22:14 #24
Jeg tror at det så er

Jk2Mount
Avatar billede arne_v Ekspert
23. juni 2004 - 22:17 #25
Hm - det ser ud til at være en lille smule anderledes !

Men prøv lige og se her:
  http://jakarta.apache.org/tomcat/connectors-doc/jk2/jk2/vhosthowto.html
Avatar billede arne_v Ekspert
23. juni 2004 - 22:17 #26
Den siger:

    <Location "/*.jsp">
        JkUriSet worker ajp13:localhost:8009
    </Location>
Avatar billede Slettet bruger
23. juni 2004 - 22:48 #27
Æv, nu er jeg helt lost. Hvor skal det skrives ind som du har fundet ?
Avatar billede arne_v Ekspert
23. juni 2004 - 22:52 #28
De 3 linier erstatter JkMount linien i httpd.conf
Avatar billede arne_v Ekspert
23. juni 2004 - 22:55 #29
Og så skal worker.properties erstattes af en workers2.properties
og <IfModule mod_jk.c> sektionen (men ikke LoadModule) skal ud af httpd.conf

Hvis jeg læser de docs rigtigt
Avatar billede Slettet bruger
23. juni 2004 - 23:19 #30
Du får dine 200 point og så må jeg nok erkende at jeg ikke er dygtig nok til at sætte Apache og Tomcat op ;-(
Jeg kan bare ikke få det til at virke, men du skal have 1K gange tak for din hjælp Arne, jeg er taknemmelig for den store indsats. Bare ærgerligt at jeg ikke kan få det til at virke
Avatar billede arne_v Ekspert
24. juni 2004 - 20:12 #31
Det generer mig lidt at det ikke virker.

Hvis du vil kan du prøve at emaile din konfigurations filer til mig, så jeg
kan se på dem.
Avatar billede Slettet bruger
24. juni 2004 - 20:25 #32
Det vil jeg mere end gerne gøre Arne :-)
Jeg vil meget, meget gerne have det til at virke, men jeg må nok indrømme at jeg efterhånden har opgivet at få Apache - Tomcat til at virke sammen
Jeg har rodet en del med det de sidste par aftener så det kan godt være at mine konfig filer er blevet lidt rodet.
Hvis du vil og har msn kan du kontakte mig på bp@maximuss.dk, så kan jeg sende dem via msn, eller du kan sende mig en mail på samme adresse så skal jeg returnere den asap

Bjarne
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester