Page 1 of 1

VirtualHosts mit apache

Posted: 2003-07-21 16:00
by fubbel
Hi

Habe bei mir debian installiert mit dem debian-installer.
vsftpd und apache laufen.

Ich hab jetzt aber eine Frage zu den VirtualHosts. Unter der Suche konnte ich nichts finden. zumindest nichts was meine Frage beantwortet.

Meine VirtualHosts sind alle zu erreichen.
also http://ip/~user/
oder http://domain.de/~user/

Diese beiden Varianten funktioneren.

Allerdings hab ich zum einen versucht
user.domain.de
hinzukriegen ohne Erfolg. Hierzu hab ich gelesen gehabt das das nur mit einem Nameserver un Verbindung geht. Stimmt das ?

Zum andern muss es doch möglich sein den webspace über http://domain.de/user ohne das "~" Zeichen zugänglich zu machen.

Weiß hierzu einer Rat?
danke

Noch ein paar Infos.
Die Domain *.domain.de und http://www.domain.de hab ich die DNS Einträge so geändert das diese auf die IP des Servers zeigen. (Domain über Domainfactory registriert.)
Die Ip des Servers, der Rdns löst nach domain.de auf. Dies kann ich im s4f Kundenmenü ja ändern.
Server: Debian über den debian-installer von hier.
sshd vsftpd und apache installiert.

Re: VirtualHosts mit apache

Posted: 2003-07-21 16:43
by mstuebner
Fubbel wrote:Meine VirtualHosts sind alle zu erreichen.
also http://ip/~user/
oder http://domain.de/~user/

Diese beiden Varianten funktioneren.

Allerdings hab ich zum einen versucht
user.domain.de
hinzukriegen ohne Erfolg. Hierzu hab ich gelesen gehabt das das nur mit einem Nameserver un Verbindung geht. Stimmt das ?
So Du Subdomains benutzen willst: Ja, es sei denn Du bekommst 1&1 dazu Dir einen Wildcard Eintrag anzulegen.
Fubbel wrote:Zum andern muss es doch möglich sein den webspace über http://domain.de/user ohne das "~" Zeichen zugänglich zu machen.
Muss es das? ;-) Das "~" Zeichen ist doch lediglich ein Zeichen für den Apachen (und Linux) dass es das Verzeichnis auf das Home des Users mappen soll. Wenn Du natürlich innerhalb der DocRoot Links auf die entsprechenden Verzeichnisse einlegst und in der ApacheConf ein FollowSymlink aktivierst sollte das schon gehen.
Fubbel wrote:Die Domain *.domain.de und http://www.domain.de hab ich die DNS Einträge so geändert das diese auf die IP des Servers zeigen. (Domain über Domainfactory registriert.)
Also scheinst Du ja einen Wildcardeintrag zu haben, also musst Du nur noch die VHosts für die userxyz.domain.de anlegen.

Re: VirtualHosts mit apache

Posted: 2003-07-22 10:53
by fubbel
Hi

erstmals danke für die Antwort.

das ~ Zeichen muss nicht unbedingt weg. Wär aber ganz praktisch.
Wobei ich das eigentlich zuerst mit vhosts machen wollte.

Wenn ich dich richtig verstanden habe, sollten die vhosts ohne Nameserver funktionieren da ich einen Wildcard Eintrag habe.

Leider bekomme ich das nicht hin. wenn ich user1.domain.de Eintrage oder bla.domain.de vertippt.domain.de lande ich immer im Stammverzeichnis des ersten Users. Also das was Standardmäsig vom Apache eingestellt ist. Ist also das selbe wie http://www.domain.de

Hier mal meine config. ich habe in der http.conf Include für den fiel drin.

Code: Select all

<VirtualHost user1.domain.de>
ServerName www.domain.de/user1
ServerAlias user1.domain.de domain.de/user1
ServerPath user1.domain.de
#User user1
#Group user1
DocumentRoot /home/user1/public_html
</VirtualHost>

<Virtualhost 217.XX.XX.XX>
ServerName User2
User user2
Group user2
DocumentRoot /home/user2/public_html
</VirtualHost>
Hier mal noch die DNS Einträge die ich bei domainfactory vogenommen habe.

Code: Select all

*.domain.de.    A               XX.XX.XX.XX              Editieren Löschen  
*.domain.de.    MX   100    domainfactory             Editieren Löschen  
domain.de.       A               XX.XX.XX.XX              Editieren Löschen  
domain.de.       MX   100    domainfactory             Editieren Löschen
Sofern ich das richtig verstanden habe, langt der Wildacard für ein vhost aus. Diesen muss ich dann in der apache conf eintragen.
Allerdings mach ich da wohl was falsch. Oder muss der cvhost auch bei domainfactory eingetragen werden ?
Dann versteh ich allerdings nicht wozu es Sinn macht den wildcard Eintrag zu haben.

Re: VirtualHosts mit apache

Posted: 2003-07-22 11:49
by sunrabbit
Hi,

deine Einträge bei DF sind korrekt, ich nutze es genauso (in meinen Augen mit die Beste möglichkeit gut mit dem Root-Server zu arbeiten, da ich mir die Arbeit mit dem Nameserver spare)

Aber dein VHost-Eintrag sieht komisch aus :)

Zu einem glaub ich nicht das http://www.domain.de/user funktionieren kann weil der vhost dann http://www.domain.de wäre und er im unterverzeichnis user suchen würde.... ob man das mit Links hinbekommt weiss ich nicht.
Fubbel wrote:

Code: Select all

<VirtualHost user1.domain.de>
ServerName www.domain.de/user1
ServerAlias user1.domain.de domain.de/user1
ServerPath user1.domain.de
#User user1
#Group user1
DocumentRoot /home/user1/public_html
</VirtualHost>
Ich würde vorschlagen :

Code: Select all

<VirtualHost 217.XX.XX.XX>
ServerName user1.domain.de
ServerAlias user1a.domain.de user1b.domain.de
DocumentRoot /home/user1/public_html
</VirtualHost>
Soweit ich weiss muss nach VirtualHost immer deine IP stehen.
Servername der (Sub)Domainname für diesen VHost, unter Serveralias weitere (sub)Domainnamen die den gleichen VHost haben sollen.

Gruß,
Sunrabbit

Re: VirtualHosts mit apache

Posted: 2003-07-22 12:49
by fubbel
Hi

danke für die Antwort.

Nur leider will das ganze trotz allem nicht funktionieren.

Meine vhost.conf sieht nun so aus.

Code: Select all

<VirtualHost 217.XX.XX.XX>
ServerName user1.domain.de
ServerAlias user1.domain.de
#ServerPath user11.domain.de
#User user1
#Group user1
DocumentRoot /home/user1/public_html
</VirtualHost>
Eigentlich genauso wie dein Vorschlag. So hatte ich sie auch zuvor. Hatte nach VirtualHost die ip stehen allerdings hab ich das Testweise dann mal geändert gehabt so wie oben weil nix geholfen hat.

Ich kann den user webspace nun über folgende Adressen aufrufen.
domain.de/~user1
http://www.domain.de/~user1
und user1.domain.de/~user1
Der letzte Eintrag ist ja schon fast so wie ich ihn will. Allerdings ist das ja doppelt gemoppelt.

mit user1.domain.de wär ich zufrieden.
wenn ich user1.domain.de aufrufe kommt die standardseite vom apache.
diese liegt bei mir in /var/www
dies hab ich in der http.conf auch so belassen. Dürfte ja auch egal sein oder?


Muss dafür eine spiezielle Ã?nderung in der apache conf gemacht werden ?
Irgendein Eintrag der mir fehlt ?

danke

Re: VirtualHosts mit apache

Posted: 2003-07-22 13:19
by phil
Hast Du den Apache neugestartet?

Re: VirtualHosts mit apache

Posted: 2003-07-22 14:28
by fubbel
Hi

Ich bin zwar noch nicht sehr lange auf dem feld linux tätig.

aber ja, so viel verständnis hab ich grade noch. :wink:
also apache hab ich restarted.
hab auch schon stop und danach wieder start probiert. wobei ja genau das durch restart gemacht wird.

Re: VirtualHosts mit apache

Posted: 2003-07-22 16:56
by sunrabbit
Hast du vielleicht irgentwo *.domain.de als Servername oder Serveralias definiert ? Dann nimm das mal raus.

K.A. ob das hilft....

Gruß,
Sunrabbit

Re: VirtualHosts mit apache

Posted: 2003-07-23 10:06
by fubbel
Hi

Nein habe *.domain.de nicht als ServerName drin.

[EDIT kompl. httpd.conf wieder rausgenommen]

Die vhost.conf brauch ich ja nicht nochmal zu posten, sieht man ja etwas weiter oben.
Zur zeit hab ich auch nur noch diesen VirtualHost in der vhost.conf drin.

wäre dankbar für eure Hilfe.
Wenn das bei Sunrabbit so geht dann muss das bei mir doch auch gehen.

Re: VirtualHosts mit apache

Posted: 2003-07-23 10:20
by pumbaa
Hi Fubbel,
> # LoadModule vhost_alias_module /usr/lib/apache/1.3/mod_vhost_alias.so
das Module solltest du laden -> also:
LoadModule vhost_alias_module /usr/lib/apache/1.3/mod_vhost_alias.so

This module creates dynamically configured virtual hosts, by allowing the IP address and/or the Host: header of the HTTP request to be used as part of the pathname to determine what files to serve. This allows for easy use of a huge number of virtual hosts with similar configuration

Hoffe das passt dann.

Viele Grüße

Re: VirtualHosts mit apache

Posted: 2003-07-23 10:44
by fubbel
Hi

danke ist ne gute Idee mit dem module.

Leider hat das aber nichts gebracht.

Kann es an den dns Einträgen liegen ?

Wenn ich
bla.domain.de
eingebe lande ich auch immer bei der standard apache seite.
mit user1.domain.de auch.
eigentlich egal was ich vor domain.de schreibe. ich lande immer an der selben stelle.

Macht es Sinn bei Domainfactory die subdomain user1.domain.de auch einen dns Eintrag zu spendieren ?

Ich war/bin aber der Meinung das das doch so irgendwie gehen sollte mit dem Wildcard Eintrag.

gruss

Re: VirtualHosts mit apache

Posted: 2003-07-23 13:33
by pumbaa
Hi,

also mit dem Wildcardeintrag geht es auf jeden Fall. Hab ich bei meinem Root-Server auch nicht anders.

Aber schau mal in der Virtualhostdirektive

<VirtualHost 217.0.0.1>

Hier solltest du deine Domain sthen haben


<VirtualHost domain.de>

Viele Grüße

Pumbaa

Re: VirtualHosts mit apache

Posted: 2003-07-24 20:37
by mstuebner
pumbaa wrote:Hi Fubbel,
> # LoadModule vhost_alias_module /usr/lib/apache/1.3/mod_vhost_alias.so
das Module solltest du laden -> also:
LoadModule vhost_alias_module /usr/lib/apache/1.3/mod_vhost_alias.so

This module creates dynamically configured virtual hosts,
Er will ja nichts DYNAMISCH generieren, zumindest passt das nicht zu einem statischen *.conf

Re: VirtualHosts mit apache

Posted: 2003-07-25 20:42
by krogoth
also ich wuerde auch mod_vhost_alias empfehlen.

ich nutze es um subdomain.domain.tld in /home/www/domain.tld/subdomain/ umzuwandeln, was eine enome erleicherung ist, denn ich brauhc nicht jede subdomain einzeln in httpd.conf einzutragen, sondern erstell einfach ein verzeichnis im ftp und schon hab ihc ne neue subdomain :)

Code: Select all

UseCanonicalName Off
VirtualDocumentRoot /home/www/%2+/%1
VirtualScriptAlias /home/www/%2+/%1/cgi-bin/

Re: VirtualHosts mit apache

Posted: 2003-07-26 11:28
by mstuebner
krogoth wrote:also ich wuerde auch mod_vhost_alias empfehlen.

ich nutze es um subdomain.domain.tld in /home/www/domain.tld/subdomain/ umzuwandeln, was eine enome erleicherung ist, denn ich brauhc nicht jede subdomain einzeln in httpd.conf einzutragen, sondern erstell einfach ein verzeichnis im ftp und schon hab ihc ne neue subdomain :)

Code: Select all

UseCanonicalName Off
VirtualDocumentRoot /home/www/%2+/%1
VirtualScriptAlias /home/www/%2+/%1/cgi-bin/
Interessant. Postest Du bitte mal den Teil posten in dem sich ergibt was die Makros als %2 und %1 defiieren?

Re: VirtualHosts mit apache

Posted: 2003-07-26 16:07
by krogoth

Re: VirtualHosts mit apache

Posted: 2003-07-27 09:17
by mstuebner
Danke, den habe ich gesucht und nicht gefunden.

Re: VirtualHosts mit apache

Posted: 2004-06-08 22:47
by braincrusher
krogoth wrote:also ich wuerde auch mod_vhost_alias empfehlen.

ich nutze es um subdomain.domain.tld in /home/www/domain.tld/subdomain/ umzuwandeln,
[/code]
geht das auch mit /var/www/peterlustig.de/subdomain

oder muss es zwangsläuftig home/www/domain.tld