[TOMCAT4] Socket Connection refused?

Pagina: 1
Acties:

  • El_BingO
  • Registratie: Juli 2001
  • Laatst online: 22-04 10:47
Hallo,
ik ben bezig om een tomcat4 server op te zetten samen met Apache 2.0.43

Ik heb een aantal HOWTO's gevolgd die de module mod_jk2.so inladen in Apache. Vervolgens heb ik jk2.properties en worker2.properties aangepast. Ook de server.xml heb ik Coyote connector aangezet op poort 8009.
Als ik dan een jsp pagina wil aanroepen via poort 80 (van apache) dan verschijnt het volgende in de error log:
code:
1
2
3
4
[error] channelSocket.open() connect failed 127.0.0.1:8009 111 Connection refused 
[error] ajp13.connect() failed ajp13:127.0.0.1:8009
[error] ajp13.service() failed to connect endpoint errno=111 Connection refused
[error] ajp13.service() Error  forwarding ajp13:127.0.0.1:8009 1 1


What's wrong? :'(
Als je meer info wilt, dan geef ik dat graag...

Ik heb het maar in Non-Windows Operating Systems gepost vanwege het probleem met de Linux config, vandaar niet in PWS

  • _JGC_
  • Registratie: Juli 2000
  • Laatst online: 12:21
code:
1
2
3
    <Connector className="org.apache.ajp.tomcat4.Ajp13Connector"
               port="8009" minProcessors="5" maxProcessors="75"
               acceptCount="25" debug="0" address="127.0.0.1"/>


Deze connector heb je nodig voor AJP13. Weet niet hoe dat zit met dat Coyote ding van jouw, maar ik kan er niets over vinden in Tomcat4 4.0.3

  • El_BingO
  • Registratie: Juli 2001
  • Laatst online: 22-04 10:47
Ok, als ik die aan zet, dan doet ie hetzelfde :S
Connection refused. Moet ik iets aan de policy veranderen of zo?

Verwijderd

Misschien net zo gemakkelijk om mod_webapp.so te gebruiken in plaats van mod_jk.
Dan hoef je enkel in server.xml een context aan te maken
en de module laden in httpd.conf:

Toevoegen aan httpd.conf:

LoadModule webapp_module libexec/mod_webapp.so
AddModule mod_webapp.c

# Custom Tomcat mod_webapp stuff.
WebAppConnection conn warp localhost:8008
WebAppDeploy examples conn /examples
WebAppDeploy mulojava conn /mulo

Voorbeeld context in server.xml

<Context path="/mulojava" docBase="mulojava" debug="5" reloadable="true"/>

Ik heb de mod_webapp op mijn machine wel even zelf moeten compileren,
anders werkte hij niet.

[ Voor 8% gewijzigd door Verwijderd op 25-11-2002 12:17 ]


  • El_BingO
  • Registratie: Juli 2001
  • Laatst online: 22-04 10:47
Ik heb geen mod_jk.so maar mod_jk2.so. Bovendien heb ik begrepen dat webapp.so niet goed werkt met Tomcat 4.1.12 Daarom heb ik gekozen voor mod_jk2.so
Maar er valt niet zoveel over te vinden... :(

Verwijderd

mod_jk2 bedoelde ik ook eigenlijk, d'r is veelste weinig over te vinden inderdaad.
Ik heb met mod_jk altijd veel problemen gehad en met mod_webapp helemaal geen.
Vandaar mijn reactie. Ik heb ook veel problemen gehad met laatste versies. Terugvallen naar een versie ervoor was voor mij in de meeste gevallen wel een oplossing.

  • El_BingO
  • Registratie: Juli 2001
  • Laatst online: 22-04 10:47
Hmmmzz... ik dacht nieuwere versies zijn beter... maar dan toch maar terug naar Tomcat LE 4.0.3 en ouwe apache?

Verwijderd

Mijn ervaringen zijn dat nieuwe versie niet altijd beter zijn, zeker niet als een connector als mod_jk2. Deze is nog zo nieuw dat hij wat mij betreft meer in de categorie 'in ontwikkeling' thuishoort.
Ik zou in eerste instantie overgaan op een andere connector (mod_jk of mod_webapp) en lekker doordraaien op tomcat 4.1 en apache2 als daar de voorkeur naar uit gaat. Dan moet je het toch wel aan de gang krijgen.

  • El_BingO
  • Registratie: Juli 2001
  • Laatst online: 22-04 10:47
heb je nog links of tips voor mod_webapp.so ? (ook waar ik hem kan downen? )

Verwijderd

Hij is te vinden onder http://jakarta.apache.org...-4.0/release/v4.1.12/src/ in de file jakarta-tomcat-connectors. Waarschijnlijk heb je die file al als je mod_jk2 van source hebt gecompileerd. Ik zou de connector in ieder geval wel even zelf compileren met een binary heb ik zelf veel problemen gehad.

Als je de install.txt leest of de bovenstaande stukjes code, dan moet je er wel aan uitkomen. mod_webapp is de meest simpele connector om te installeren.

  • OxiMoron
  • Registratie: November 2001
  • Laatst online: 12-05 16:21
ehhmm. als je debian draait heb je hier misschien wel iets aan...
complete handleiding over hoe we op school debien met apache, mysql, php en tomcat 4 moesten installeren :)

Albert Einstein: A question that sometime drives me hazy: Am I or are the others crazy?


  • El_BingO
  • Registratie: Juli 2001
  • Laatst online: 22-04 10:47
Ok, maar op zich draait het allemaal want Apache invoked de Tomcat op poort 8009, maar het mag niet (connection refused). Daar moet toch iets mis zijn, niet zo zeer met de modules, versies e.d.?

Verwijderd

Er kan in ieder geval geen socketconnectie worden gelegd via poort 8009.

Dat kan zijn dat het protocol niet helemaal juist is (specifiek connector probleem). Vandaar dat ik zou zeggen probeer eens een andere connector.

Of dat de rechten niet juist zijn (hier heb je bij mod_webapp geen probleem mee).
Ik heb even gekeken op jakart.apache.org en gezien dat het nodig kan zijn dat tomcat en de webserver in dezelfde group moeten zitten.

  • El_BingO
  • Registratie: Juli 2001
  • Laatst online: 22-04 10:47
Ik kan toch ook gewoon Tomcat op poort 80 laten draaien? Wat is er op tegen om apache weg te gummen in deze config?

  • _JGC_
  • Registratie: Juli 2000
  • Laatst online: 12:21
Tomcat4 moet als root draaien wil je hem aan poort 80 kunnen binden ;)

Apache start op als root en switcht na binden aan poort 80 over naar het www-data of httpd account. Tomcat4 blijft altijd onder dezelfde user draaien. Ik zou voor geen goud mijn tomcat4 alle bestanden laten lezen en schrijven (maakt een user een JSP'tje die ff /etc/shadow uit gaat lezen, /etc/passwd erbij en je kunt offline gaan password cracken. Of erger nog: gewoon een andere hash erin)
Wat je wel kunt doen: Tomcat4 op poort 8180 of 8080 draaien en dan met iptables of ipchains alle requests op 80 doorsturen naar de poort van tomcat4.

Verwijderd

Kan natuurlijk altijd, maar ik zou dit niet doen op een productieserver (zoals JGC aangeeft).
Als het enkel en alleen te doen is voor ontwikkeling van jsp / servlets op een standalone bak, is dit wel een mogelijke oplossing.

  • El_BingO
  • Registratie: Juli 2001
  • Laatst online: 22-04 10:47
_JGC_ schreef op 25 november 2002 @ 16:22:
Tomcat4 moet als root draaien wil je hem aan poort 80 kunnen binden ;)

Apache start op als root en switcht na binden aan poort 80 over naar het www-data of httpd account. Tomcat4 blijft altijd onder dezelfde user draaien. Ik zou voor geen goud mijn tomcat4 alle bestanden laten lezen en schrijven (maakt een user een JSP'tje die ff /etc/shadow uit gaat lezen, /etc/passwd erbij en je kunt offline gaan password cracken. Of erger nog: gewoon een andere hash erin)
Wat je wel kunt doen: Tomcat4 op poort 8180 of 8080 draaien en dan met iptables of ipchains alle requests op 80 doorsturen naar de poort van tomcat4.
Weet je zo wat voor commando dat is voor iptables?
Pagina: 1