wie dyndns + apache + zope + ...

Alles, was den Apache betrifft, kann hier besprochen werden.

wie dyndns + apache + zope + ...

Postby goldfisch7 » 17. January 2009 09:35

Hallo Newsgroup,

beim Thema apache2 bin ich Newbie und stehe derzeit auf dem Schlauch, wie ich weitermache.

Mein Netzwerk hat folgende Struktur


Webserver 192.168.4.1 (DMZ)
|
Internet --- Firewall/Router (mit 3 Netzwerkkarten)
|
Locales Netzwerk 192.168.2.X (loc)

Ich möchte, dass folgende Seiten vom Internet her zugreifbar sind:

a) einfache Webseite (http), die von apache2 auf dem Webserver (DMZ) bereitgesellt wird

b) zope/plone, der auf dem Webserver (DMZ) bereitgestellt wird

c) digitaler Videorecorder mit http-Oberfläche, der im localen Netzwerk läuft (Zugriff sollte per https erfolgen)


:?: Untechnisch ausgedrückt ist mir nicht klar, wie ich die "Weiche" zu den 3 Seiten herstellen kann. Kann mich jemand gedanklich in die richtige Richtung schupsen?

Bei dyndns habe ich 3 hostnames eingerichtet.

Die Firewall (shorewall) ist so eingerichtet, das alle Anfragen auf Port 80 an die DMZ weitergeleitet werden.

Wie erkläre ich nun Apache, dass

dyndns-A auf die Seite a) (http, apache2, Port 80)

dyndns-B auf die Seite b) (zope/plone, Port ??)

dyndns-C auf die Seite c) (Videosever, SSL)

weitergeleitet wird?

Danke!


tony
goldfisch7
 
Posts: 2
Joined: 17. January 2009 09:28

Re: wie dyndns + apache + zope + ...

Postby Nobbie » 17. January 2009 11:01

"Weiterleitung" wird nicht gehen, weil ja nur das Apache Server von außen erreichbar ist - d.h. nach der Weiterleitung steht der Anwender im Dunkeln.

Wenn die Inhalte von plone/zope HTTP-konform sind (wovon ich mal ausgehe) und auch der Videorecorder auf dem Protokoll HTTP basiert (er muss es tun - sonst geht es gar nicht), sprich, es gibt einen Videostream a la http://blablal/undsoweiter), dann geht es durch die Einrichtung von ReverseProxys, wobei für jeden der drei Dienste/Domains ein eigener VirtualHost angelegt werden muss und in jedem VirtualHost wird dann der entsprechende Proxy eingerichtet.

Apache ist dabei der einzige, der den Content ausliefert, was auch gar nicht anders geht, denn Apache ist der einzige mit Kontakt zur Außenwelt. So sieht Deine Architektur aus.

Wobei ich mit plone/zope noch ein Problem habe, ich kenne es nicht und sehe nicht, ob die Anwendung nicht sowieso schon auf einem Webserver (Apache?) läuft oder ist das irgendeine proprietäre Lösung? Was ist das für eine Software und wie ist sie realisiert?
Nobbie
 
Posts: 8772
Joined: 09. March 2008 13:04

Re: wie dyndns + apache + zope + ...

Postby goldfisch7 » 17. January 2009 13:39

Hallo Nobbie,

danke für Deine Antwort.

Ich habe unter /etc/apache2/sites-enabled zwei virtuelle Hosts angelegt. Leider lande ich immer auf dem gleichen (zope.homedns.org).

:roll: Hier der erste virtuelle Host: zope.homedns.org

<VirtualHost *:80>
ServerName zope.homedns.org
ServerAlias webserver
ServerAdmin name@server.duck
ServerSignature On

# we don't need a DocumentRoot for a zope only sites
#DocumentRoot /var/www/example.org

CustomLog /var/log/apache2/example.org-access.log combined
ErrorLog /var/log/apache2/example.org-error.log
LogLevel warn

# log the deflate compression rate to a file
#CustomLog /var/log/apache2/deflate_log deflate

<IfModule mod_rewrite.c>
RewriteEngine On

# use RewriteLog to debug problems with your rewrite rules
# disable it after you found the error our your harddisk will be filled *very fast*
# RewriteLog "/var/log/apache2/rewrite_log"
# RewriteLogLevel 2

# serving icons from apache 2 server
RewriteRule ^/icons/ - [L]

# rewrite any access to manage to a secure server
RewriteRule ^/(.*)/manage(.*) \
https://secure.example.org/zope/example ... 1/manage$2 [NC,R=301,L]
RewriteRule ^/manage(.*) \
https://secure.example.org/zope/example ... g/manage$1 [NC,R=301,L]

# rewrite any other access to the zope server using a proxy [P] and add the VMH magic keywords
# use %{SERVER_NAME} instead of example.com to avoid busting the ServerAlias
# %{HTTP_HOST} is bad because it may contain the port
RewriteRule ^/(.*) \
http://localhost:8081/VirtualHostBase/http/%{SERVER_NAME}:80/home/VirtualHostRoot/$1 [L,P]
</IfModule>

<IfModule mod_proxy.c>
ProxyVia On

# prevent the webserver from beeing used as proxy
<LocationMatch "^[^/]">
Deny from all
</LocationMatch>
</IfModule>


# caching (disabled)
# this caches every file with the correct caching informations starting at /
<IfModule mod_disk_cache.c>
#CacheEnable disk /
</IfModule>

# compression (disabled)
<IfModule mod_deflate.c>
#SetOutputFilter DEFLATE
</IfModule>
</VirtualHost>


:roll: Hier der zweite virtuelle Host:

NameVirtualHost webserver:80
<VirtualHost *>
ServerName http.homedns.org
ServerAdmin webmaster@localhost

DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# This directive allows us to have apache2's default start page
# in /apache2-default/, but still have / go to the right place
# RedirectMatch ^/$ /index.htm
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

ErrorLog /var/log/apache2/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /var/log/apache2/access.log combined
ServerSignature On

Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

</VirtualHost>


:?: Was mache ich denn hier falsch?

Danke

goldfisch
goldfisch7
 
Posts: 2
Joined: 17. January 2009 09:28

Re: wie dyndns + apache + zope + ...

Postby Nobbie » 17. January 2009 15:59

Was für IPs haben die beiden Domains intern? Wenn sie gleich sind, fehlt das NameVirtualHost-Statement am Anfang (ist wahrscheinlich noch auskommentiert).

P.S: Ich sehe es gerade weiter unter - das ist recht chaotisch, wie sowieso der ganze Aufbau. Einmal nimmst Du VirtualHost *, beim anderen VirtualHost *:80 und dann (totales Chaos) NameVirtualHost *:80 mittendrin irgendwo.

Lies doch mal in Ruhe die Doku von Apache durch, da gibt es auch Beispiele, dann sieht das nicht ganz so furchtbar nach "keine Ahnung was ich hier tue ich stoppel mas was zusammen" aus. Ein Tipp: benutze weitetsgehend IPs, nicht Domainnamen. Also beispielsweise NameVirtualHost 192.168.178.20, oder auch VirtualHost 192.168.178.20:80, das ist besser als Domainnamen (die dann erst aufgelöst werden müssen). Steht aber auch in der Doku, wenn man sie mal liest....
Nobbie
 
Posts: 8772
Joined: 09. March 2008 13:04


Return to Apache

Who is online

Users browsing this forum: No registered users and 3 guests