expertenaustausch > comm.software.* > comm.software.webserver

Magnus Warker (09.01.2014, 11:44)
Hallo,

auf meinem Apache-Server laufen mehrere virtuelle Hosts für verschiedene
Top-Level-Domains:



...

Nun möchte ich für eine dieser Domains eine Subdomain einrichten:

ssl.mydomain2.de

Fragen:

Wie lege ich eine eigene Virtual Host-Umgebung dafür an?
Vor allem: Wie sage ich diesem Virtual Host dann, dass er für die
Subdomain zuständig ist?

Dieses Beispiel macht mir Kopfzerbrechen:



Dort enthält der Virtual Host keine Direktive "ServerName". Wie wird der
Virtual Host denn dann der speziellen Subdomain zugeordnet?

Muss ich neben der Anpassung der Apache-Konfiguration noch sonst
irgendetwas veranlassen, z. B. im DNS?

Danke
Magnus
Martin Schoenbeck (09.01.2014, 12:03)
Hallo Magnus,

Magnus Warker schrieb:

[..]
> Wie lege ich eine eigene Virtual Host-Umgebung dafür an?
> Vor allem: Wie sage ich diesem Virtual Host dann, dass er für die
> Subdomain zuständig ist?


Du kopierst den Eintrag von und ersetzt www durch ssl.
Dann schaust Du, welche Pfade da noch so drinstehen und ersetzt die durch
geeignete neue.

> Dieses Beispiel macht mir Kopfzerbrechen:
>
> Dort enthält der Virtual Host keine Direktive "ServerName". Wie wird der
> Virtual Host denn dann der speziellen Subdomain zugeordnet?


Gar nicht. Der Virtual Host nimmt alle Domains auf der IP-Adresse.

> Muss ich neben der Anpassung der Apache-Konfiguration noch sonst
> irgendetwas veranlassen, z. B. im DNS?


Kann sein. Weiß man nicht, solange man nicht weiß, was aktuell im DNS
steht.

Gruß Martin
Magnus Warker (09.01.2014, 13:05)
On 01/09/2014 11:03 AM, Martin Schoenbeck wrote:

>> Wie lege ich eine eigene Virtual Host-Umgebung dafür an?
>> Vor allem: Wie sage ich diesem Virtual Host dann, dass er für die
>> Subdomain zuständig ist?


> Du kopierst den Eintrag von und ersetzt www durch ssl.
> Dann schaust Du, welche Pfade da noch so drinstehen und ersetzt die durch
> geeignete neue.


Ok, das setzt die Direktive "ServerName" voraus, aber:

>> Dieses Beispiel macht mir Kopfzerbrechen:


>> Dort enthält der Virtual Host keine Direktive "ServerName". Wie wird der
>> Virtual Host denn dann der speziellen Subdomain zugeordnet?


> Gar nicht. Der Virtual Host nimmt alle Domains auf der IP-Adresse.


Da habe ich dann aber ein Verständnisproblem: Mein Server hat nur eine
IP, aber es laufen mehrere Virtuelle Hosts darauf mit unterschiedlichen
Domains.

Ich muss doch irgendwie die ganzen Einstellungen (Pfade, Berechtigungen,
etc.) zwischen Haupt-Server () und Subdomain
(ssl.mydomain1.de) separieren können...?

Magnus
Stefan Froehlich (09.01.2014, 14:30)
On Thu, 09 Jan 2014 12:05:50 Magnus Warker wrote:
> >> Dieses Beispiel macht mir Kopfzerbrechen:


[

> >> Dort enthält der Virtual Host keine Direktive "ServerName". Wie
> >> wird der Virtual Host denn dann der speziellen Subdomain
> >> zugeordnet?


> > Gar nicht. Der Virtual Host nimmt alle Domains auf der
> > IP-Adresse.


> Da habe ich dann aber ein Verständnisproblem: Mein Server hat nur
> eine IP, aber es laufen mehrere Virtuelle Hosts darauf mit
> unterschiedlichen Domains.


Das ist der Normalfall.

> Ich muss doch irgendwie die ganzen Einstellungen (Pfade,
> Berechtigungen, etc.) zwischen Haupt-Server () und
> Subdomain (ssl.mydomain1.de) separieren können...?


Ja, klar. Dazu nimmt man (so wie Du vermutlich bei Deinem Host)

| NameVirtualHost a.b.c.d:80
| <VirtualHost a.b.c.d:80>
| ServerName foo.example
| ...
| </VirtualHost>
| <VirtualHost a.b.c.d:80>
| ServerName bar.example
| ...
| </VirtualHost>

Das muss aber nicht so sein. In dem von Dir zitierten Beispiel geht
es offenbar um eine Konfiguration, wo der DNS Name eine IP-Adresse
exklusiv fuer sich hat (oder aber mit allen anderen DNS-Namen das
gleiche Ergebnis erzielt werden soll). In solchen Faellen laesst man
"NameVirtualHost" weg und richtet einfach fuer jede Maschine einen
<VirtualHost> ohne die Option "ServerName" ein. Das ist aber kein
essentieller Aspekt des Beispiels.

Servus,
Stefan
Magnus Warker (09.01.2014, 14:42)
On 01/09/2014 01:30 PM, Stefan Froehlich wrote:
> On Thu, 09 Jan 2014 12:05:50 Magnus Warker wrote:


> Das ist aber kein
> essentieller Aspekt des Beispiels.


Das heißt also, ich kann auch wie bisher namenbasierte VHosts verwenden
(copy, paste, anpassen) und nur die für das Tunneling relevanten
Direktiven anpassen...

Essenziell sind vermutlich die Proxy*-Direktiven?

Magnus
Stefan Froehlich (09.01.2014, 17:59)
On Thu, 09 Jan 2014 13:42:13 Magnus Warker wrote:
> > Das ist aber kein essentieller Aspekt des Beispiels.


> Das heißt also, ich kann auch wie bisher namenbasierte VHosts verwenden
> (copy, paste, anpassen) und nur die für das Tunneling relevanten
> Direktiven anpassen...


Ich wuesste ad hoc nichts, was dagegen spraeche (allerdings habe
ich so eine Tunnel-Konfiguration noch nicht aufgesetzt). Einfach
ausprobieren - und danach hier berichten :-)

> Essenziell sind vermutlich die Proxy*-Direktiven?


Jupp.

Servus,
Stefan
Thomas Gohel (09.01.2014, 18:09)
Magnus Warker meinte zum Thema "Re: Apache und Subdomains"

Hallo Magnus,

> Da habe ich dann aber ein Verständnisproblem: Mein Server hat nur
> eine IP, aber es laufen mehrere Virtuelle Hosts darauf mit
> unterschiedlichen Domains.
> Ich muss doch irgendwie die ganzen Einstellungen (Pfade,
> Berechtigungen, etc.) zwischen Haupt-Server () und
> Subdomain (ssl.mydomain1.de) separieren können...?


Du hast da einen Denkfehler: Du solltest alle Deine Domains, incl.
Sub-Domains als jeweilige virtuelle Hosts laufen lassen, denn das
erhöht die Übersichtlichtkeit. Den Hauptserver bzw. die Haupt-
konfiguration könntest Du dann per "DENY FROM ALL" erden, wenn
Zugriffe per reiner IP oder Vertipper-(Sub)domain dort auflaufen.

Tschau,

--------------
/ h o m a s
Magnus Warker (12.01.2014, 06:24)
On 01/09/2014 05:09 PM, Thomas Gohel wrote:

>> Ich muss doch irgendwie die ganzen Einstellungen (Pfade,
>> Berechtigungen, etc.) zwischen Haupt-Server () und
>> Subdomain (ssl.mydomain1.de) separieren können...?


> Du hast da einen Denkfehler: Du solltest alle Deine Domains, incl.
> Sub-Domains als jeweilige virtuelle Hosts laufen lassen, denn das
> erhöht die Übersichtlichtkeit. Den Hauptserver bzw. die Haupt-
> konfiguration könntest Du dann per "DENY FROM ALL" erden, wenn
> Zugriffe per reiner IP oder Vertipper-(Sub)domain dort auflaufen.


Ich wäre froh, wenn sich das Problem durch Umdenken lösen ließe. Aber es
sieht nicht so aus:

Mein Server mydomain.de hat einen eigenen Virtual Host und einen
bestimmten Inhalt. Parallel dazu möchte ich ein Wiki anbieten, welches
zu diesem Server gehört, d. h. das Wiki soll über eine der beiden
folgenden URLs erreichbar sein:

-
- wiki.mydomain.de

Die erste Variante betreibe ich seit einigen Jahren, aber sie verwendet
ein unschönes URL-Format:



Viel lieber wäre mir folgendes, kürzere Format:



Dies versuche ich seit geraumer Zeit mit Hilfe der Mediawiki-Community
zu erreichen:



Es zeichnet sich aber ab, dass dafür das Wiki einen eigenen DocumentRoot
benötigt (s. Thread auf MediaWiki). Dies geht aber nicht, solange das
Wiki Teil desselben VirtualHost ist, der die Hauptseite mydomain.de bedient.

Also brauche ich für mein Wiki in jedem Fall einen eigenen VirtualHost,
egal ob ich es als Unterverzeichnis (mydomain.de/wiki) oder Subdomain
(wiki.mydomain.de) realisiere, richtig?

Danke für Tipps
Magnus
Martin Schoenbeck (12.01.2014, 15:24)
Hallo Magnus,

Magnus Warker schrieb:

> Also brauche ich für mein Wiki in jedem Fall einen eigenen VirtualHost,
> egal ob ich es als Unterverzeichnis (mydomain.de/wiki) oder Subdomain
> (wiki.mydomain.de) realisiere, richtig?


Im ersten Fall nicht, da ist es schließlich Teil Deiner Hauptdomain, im
zweiten Fall ja, wobei das natürlich keine Subdomain von
ist, sondern eine parallele Subdomain von mydomain.de.

Was ist denn jetzt Dein Problem, daß Du nicht einfach den Eintrag von
kopierst und aus www wiki machst und ein paar
Verzeichniseinträge änderst?

Gruß Martin
Magnus Warker (12.01.2014, 16:19)
On 01/12/2014 02:24 PM, Martin Schoenbeck wrote:

> Was ist denn jetzt Dein Problem, daß Du nicht einfach den Eintrag von
> kopierst und aus www wiki machst und ein paar
> Verzeichniseinträge änderst?


Das Problem ist, dass das Wiki das Unterverzeichnis "wiki" erzwingen
will, d. h. ein Aufruf von



wird übersetzt in



was nicht gefunden wird.

Das ist sicher ein mediawiki-spezifisches Problem, aber das hilft mir
nichts (s. VHost-Konfiguration unten).

Magnus

-----

<VirtualHost *:80>
ServerName wiki.bavaria64.de
DocumentRoot /var/lib/mediawiki/

<Directory /var/lib/mediawiki/>
Options +FollowSymLinks
AllowOverride All
order allow,deny
allow from all
</Directory>

<Directory /var/lib/mediawiki/config>
Options -FollowSymLinks
AllowOverride None
</Directory>

<Directory /var/lib/mediawiki/upload>
Options -FollowSymLinks
AllowOverride None
</Directory>

ErrorLog /var/log/apache2/error.log
LogLevel warn

</VirtualHost>
Martin Schoenbeck (12.01.2014, 16:41)
Hallo Magnus,

Magnus Warker schrieb:

> Das ist sicher ein mediawiki-spezifisches Problem, aber das hilft mir
> nichts (s. VHost-Konfiguration unten).


Das wird ein Konfigurationsproblem. Unser internes wiki hat da jedenfalls
kein /wiki/ drin.

Und ansonsten könntest Du natürlich Regeln definieren, die das passend
umsetzen, bevor es ans wiki geht.

Gruß Martin
Peter J. Holzer (12.01.2014, 17:31)
[Subject geändert. Mit Subdomains hat das wenig zu tun]

On 2014-01-12 14:41, Martin Schoenbeck <ms.usenet.nospam> wrote:
> Magnus Warker schrieb:
>> Das ist sicher ein mediawiki-spezifisches Problem, aber das hilft mir
>> nichts (s. VHost-Konfiguration unten).

> Das wird ein Konfigurationsproblem. Unser internes wiki hat da jedenfalls
> kein /wiki/ drin.


ACK. Das ist in
eigentlich schön beschrieben.

Magnus, bist Du dieser Anleitung gefolgt? (Der von Dir gepostete
Config-File-Auszug sieht eher nicht so aus)

hp
Thomas Gohel (12.01.2014, 19:00)
Magnus Warker meinte zum Thema "Re: Apache und Subdomains"

Hallo Magnus,

> Dies versuche ich seit geraumer Zeit mit Hilfe der
> Mediawiki-Community zu erreichen:
>
> for_mediawiki


Da sind doch die typischen Tips zur Lösung des Problems via
RewriteEngine & RewriteRule gut beschrieben?

> Es zeichnet sich aber ab, dass dafür das Wiki einen eigenen
> DocumentRoot benötigt (s. Thread auf MediaWiki).


Eine eigene Sub-Domain vereinfacht Dein Problem nur marginal. Die
URL wird im Ergebnis kürzer, aber die Lösung ist trotzdem die gleiche
wie bei Deinem jetzigen Webauftritt.

> Dies geht aber nicht, solange das Wiki Teil desselben VirtualHost
> ist, der die Hauptseite mydomain.de bedient.


Warum sollte das nicht funktionieren, die <Directory>-Direktive existiert
auch dort. Nur die RewriteRule-Regel ist eventuell ein klein wenig anders,
jenachdem wie Du das Wiki aufsetzt.

> Also brauche ich für mein Wiki in jedem Fall einen eigenen
> VirtualHost, egal ob ich es als Unterverzeichnis (mydomain.de/wiki)
> oder Subdomain (wiki.mydomain.de) realisiere, richtig?


Das ist eine Sackgasse. Beschäftige Dich bitte mit der RewriteEngine
und erst danach kann das Wiki gerne in eine eigene Sub-Domain umziehen.
;-)

Tschau,

--------------
/ h o m a s
Magnus Warker (13.01.2014, 11:47)
On 01/12/2014 04:31 PM, Peter J. Holzer wrote:

> Magnus, bist Du dieser Anleitung gefolgt? (Der von Dir gepostete
> Config-File-Auszug sieht eher nicht so aus)


Ja, bin ich. Die gepostete Konfiguration war der neue Versuch mit der
Subdomain.

Die Anleitung für die kurzen URLs hat bei mir nie zufriedenstellend
funktioniert (s. u.).

Ich hätte gerne das Format:



Aber daraus wird immer:



Angeblich verträgt sich die Alias-Direktive nicht mit den Rewrites.



Magnus

-----

<VirtualHost *:80>
....

Include /etc/mediawiki/apache.conf

DocumentRoot /var/lib/mediawiki

RewriteEngine On
RewriteRule ^/?wiki(/.*)?$ %{DOCUMENT_ROOT}/index.php [l]

</VirtualHost>
Thomas Gohel (13.01.2014, 19:50)
Magnus Warker meinte zum Thema "Re: Mediawiki Short URLs"

Hallo Magnus,

> Angeblich verträgt sich die Alias-Direktive nicht mit den Rewrites.


Das mag ich jetzt nicht so ganz glauben, denn andere Foren-, Blog-
und Wiki-Software funktioniert damit ohne Probleme.

Tschau,

--------------
/ h o m a s

Ähnliche Themen