PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : VirtualHosts laufen nicht.



Mac Fly
04.01.2005, 08:22
Ich hab den Apache 1.3.33 und dich bekomme einfach keine VirtualHosts zum Laufen. Nicht mal mit webmin *schäm*

Ich hab eine IP und drei Domains.

Wenn ich nur die IP angebe, dann soll er in das voreingestellte DocumentRoot. Dort hab ich (mit .htaccess geschützt) phpmyadmin usw...

Gebe ich allerdings eine Domain an, dann soll er in das Document Root, das ich angegeben hab. Aber eben das funktioniert nicht. Er geht immer in den ersten definierten Virtualhost.

Meine /etc/apache/conf/apache.conf
ServerType standalone
ServerRoot /etc/apache
PidFile /var/run/apache.pid
ScoreBoardFile /etc/apache/apache.scoreboard
ErrorLog logs/error_log
LogLevel warn
ResourceConfig /dev/null
AccessConfig /dev/null
DocumentRoot /var/www/localhost/htdocs


LoadModule mmap_static_module modules/mod_mmap_static.so
LoadModule env_module modules/mod_env.so
LoadModule config_log_module modules/mod_log_config.so
LoadModule agent_log_module modules/mod_log_agent.so
LoadModule referer_log_module modules/mod_log_referer.so
LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule status_module modules/mod_status.so
LoadModule info_module modules/mod_info.so
LoadModule includes_module modules/mod_include.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule dir_module modules/mod_dir.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule asis_module modules/mod_asis.so
LoadModule imap_module modules/mod_imap.so
LoadModule action_module modules/mod_actions.so
LoadModule speling_module modules/mod_speling.so
LoadModule userdir_module modules/mod_userdir.so
LoadModule proxy_module modules/libproxy.so
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule access_module modules/mod_access.so
LoadModule auth_module modules/mod_auth.so
LoadModule anon_auth_module modules/mod_auth_anon.so
LoadModule dbm_auth_module modules/mod_auth_dbm.so
LoadModule db_auth_module modules/mod_auth_db.so
LoadModule digest_module modules/mod_digest.so
LoadModule cern_meta_module modules/mod_cern_meta.so
LoadModule expires_module modules/mod_expires.so
LoadModule headers_module modules/mod_headers.so
LoadModule usertrack_module modules/mod_usertrack.so
LoadModule example_module modules/mod_example.so
LoadModule unique_id_module modules/mod_unique_id.so
LoadModule setenvif_module modules/mod_setenvif.so
<IfDefine PHP4>
LoadModule php4_module extramodules/libphp4.so
</IfDefine>
LoadModule vhost_alias_module modules/mod_vhost_alias.so

ClearModuleList
AddModule mod_mmap_static.c
AddModule mod_env.c
AddModule mod_log_config.c
AddModule mod_log_agent.c
AddModule mod_log_referer.c
AddModule mod_mime_magic.c
AddModule mod_mime.c
AddModule mod_negotiation.c
AddModule mod_status.c
AddModule mod_info.c
AddModule mod_include.c
AddModule mod_autoindex.c
AddModule mod_dir.c
AddModule mod_cgi.c
AddModule mod_asis.c
AddModule mod_imap.c
AddModule mod_actions.c
AddModule mod_speling.c
AddModule mod_userdir.c
AddModule mod_proxy.c
AddModule mod_alias.c
AddModule mod_rewrite.c
AddModule mod_access.c
AddModule mod_auth.c
AddModule mod_auth_anon.c
AddModule mod_auth_dbm.c
AddModule mod_auth_db.c
AddModule mod_digest.c
AddModule mod_cern_meta.c
AddModule mod_expires.c
AddModule mod_headers.c
AddModule mod_usertrack.c
AddModule mod_example.c
AddModule mod_unique_id.c
AddModule mod_so.c
AddModule mod_setenvif.c
<IfDefine PHP4>
AddModule mod_php4.c
</IfDefine>
AddModule mod_vhost_alias.c

Include conf/commonapache.conf
Port 80
Listen 80
CustomLog logs/access_log combined env=!VLOG
Include conf/vhosts/Vhosts.conf

Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
MinSpareServers 4
MaxSpareServers 10
StartServers 4
MaxClients 150
MaxRequestsPerChild 500
Include conf/addon-modules/mod_php.conf

Meine /etc/apache/conf/vhosts/Vhosts.conf

Port 80
ServerRoot /etc/apache
ResourceConfig /dev/null
AccessConfig /dev/null

NameVirtualHost *

<VirtualHost *>
ServerAdmin webmaster@german-bash.de
ServerName german-bash.de
ServerAlias www.german-bash.de
DocumentRoot /home/gbo/public_html
CustomLog /home/gbo/logs/access.log vhost
ErrorLog /home/gbo/logs/error.log
</VirtualHost>

<VirtualHost *>
ServerAdmin webmaster@back2future-soundcrew.de
ServerName back2future-soundcrew.de
ServerAlias www.back2future-soundcrew.de
DocumentRoot /home/netkiffer/public_html
CustomLog /home/netkiffer/logs/access.log vhost
ErrorLog /home/netkiffer/logs/error.log
</VirtualHost>

Meine /etc/apache/conf/commonapache.conf
User nobody
Group nogroup

ServerAdmin webmaster@german-bash.org

<Directory />
Options -All -Multiviews
AllowOverride None
Order deny,allow
Deny from all
</Directory>

<IfModule mod_userdir.c>
UserDir public_html
</IfModule>

<IfModule mod_dir.c>
DirectoryIndex index.html index.php index.php3 index.shtml index.cgi index.pl index.htm Default.htm default.htm
</IfModule>

AccessFileName .htaccess

<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>

UseCanonicalName On

<IfModule mod_mime.c>
TypesConfig conf/mime.types
</IfModule>

DefaultType text/plain

<IfModule mod_mime_magic.c>
MIMEMagicFile conf/magic
</IfModule>

HostnameLookups Off

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
LogFormat "%v %h %l %u %t \"%r\" %>s %b %T" script
LogFormat "%v %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" VLOG=%{VLOG}e" vhost

ServerSignature On

<IfModule mod_alias.c>

Alias /icons/ /var/www/localhost/icons/
Alias /doc /usr/share/doc

ScriptAlias /cgi-bin/ /var/www/localhost/cgi-bin/

</IfModule>


<IfModule mod_autoindex.c>

IndexOptions FancyIndexing

AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip

AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*

AddIcon /icons/binary.gif .bin .exe
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip .bz2
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py .php .php3
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif core

AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^

DefaultIcon /icons/unknown.gif

AddDescription "GZIP compressed document" .gz
AddDescription "tar archive" .tar
AddDescription "GZIP compressed tar archive" .tgz

ReadmeName README
HeaderName HEADER
IndexIgnore .??* *~ *# HEADER* RCS CVS *,v *,t

</IfModule>

<IfModule mod_mime.c>

AddEncoding x-compress Z
AddEncoding x-gzip gz tgz

AddLanguage da .dk
AddLanguage nl .nl
AddLanguage en .en
AddLanguage et .ee
AddLanguage fr .fr
AddLanguage de .de
AddLanguage el .el
AddLanguage he .he
AddCharset ISO-8859-8 .iso8859-8
AddLanguage it .it
AddLanguage ja .ja
AddCharset ISO-2022-JP .jis
AddLanguage kr .kr
AddCharset ISO-2022-KR .iso-kr
AddLanguage no .no
AddLanguage pl .po
AddCharset ISO-8859-2 .iso-pl
AddLanguage pt .pt
AddLanguage pt-br .pt-br
AddLanguage ltz .lu
AddLanguage ca .ca
AddLanguage es .es
AddLanguage sv .se
AddLanguage cz .cz
AddLanguage ru .ru
AddLanguage zh-tw .tw
AddLanguage tw .tw
AddCharset Big5 .Big5 .big5
AddCharset WINDOWS-1251 .cp-1251
AddCharset CP866 .cp866
AddCharset ISO-8859-5 .iso-ru
AddCharset KOI8-R .koi8-r
AddCharset UCS-2 .ucs2
AddCharset UCS-4 .ucs4
AddCharset UTF-8 .utf8

<IfModule mod_negotiation.c>
LanguagePriority en fr de es it da nl et el ja kr no pl pt pt-br ru ltz ca sv tw
</IfModule>

AddType application/x-tar .tgz

AddHandler cgi-script .cgi

AddType text/html .shtml
AddHandler server-parsed .shtml

AddHandler imap-file map

</IfModule>

<Location /manual>
Options Multiviews
ErrorDocument 404 "The document you requested has not been installed on your system."
</Location>

<IfModule mod_setenvif.c>

BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0

BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0

</IfModule>

<IfModule mod_status.c>
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
allow from 127.0.0.1
</Location>
</IfModule>

<IfModule mod_info.c>
<Location /server-info>
SetHandler server-info
Order deny,allow
Deny from all
Allow from 127.0.0.1
</Location>
</IfModule>

<IfModule mod_perl.c>
<Location /perl-status>
SetHandler perl-script
PerlHandler Apache::Status
Order deny,allow
Allow from all
Allow from 127.0.0.1
</Location>
</IfModule>

<IfModule mod_dav.c>
DavLockDB /var/lock/mod_dav
</IfModule>

<IfModule mod_include.c>
</IfModule>


<Directory /var/www/localhost/htdocs>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>

<Directory /var/www/localhost/cgi-bin>
AllowOverride All
Options ExecCGI
Order allow,deny
Allow from all
</Directory>

<Directory /home/*/public_html>
AllowOverride All
Options MultiViews -Indexes Includes FollowSymLinks
Order allow,deny
Allow from all
</Directory>

<Directory /home/*/public_html/cgi-bin>
Options +ExecCGI -Includes -Indexes
SetHandler cgi-script
</Directory>

<IfModule mod_perl.c>
<Directory /home/*/public_html/perl>
SetHandler perl-script
PerlHandler Apache::PerlRun
Options -Indexes ExecCGI
PerlSendHeader On
</Directory>
</IfModule>

<Directory /var/www/localhost/icons>
Options -Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>

<Directory /usr/share/doc>
Options Indexes FollowSymLinks MultiViews
Order deny,allow
Deny from all
Allow from 127.0.0.1
</Directory>

<Location /index.shtml>
Options +Includes
</Location>

Weiss irgendjemand woran das liegen könnte? Ich weiss es echt nicht mehr, ich hab alles mögliche ausprobiert... :hilfe2:

niLs
04.01.2005, 09:01
Gib dem NameVirtualHost die Server-Ip, wobei XXX.XXX.XXX.XXX für deine Server-Ip stehen sollte.


NameVirtualHost XXX.XXX.XXX.XXX

<VirtualHost XXX.XXX.XXX.XXX>
ServerAdmin webmaster@german-bash.de
ServerName german-bash.de
ServerAlias www.german-bash.de
DocumentRoot /home/gbo/public_html
CustomLog /home/gbo/logs/access.log vhost
ErrorLog /home/gbo/logs/error.log
</VirtualHost>

Mac Fly
04.01.2005, 10:00
Funktionierte auch nicht, ich hab jetzt mal alle configs gelöscht und fang von vorn an. Irgendwo muss sich da ein Fehler eingeschlichen haben...

Sir Auron
04.01.2005, 10:29
Benutz Webmins Erweiterung Virtualmin.
http://webmin.com/index8.html

niLs
04.01.2005, 10:46
Virtualmin halte ich für überflüssig, da man die einträge alle wunderbar auf dem prompt machen kann. ist doch eigentlich nichts schweres bei. ich finde man braucht nicht für jeden quatsch nen interface zur administration

khs
04.01.2005, 11:13
Gebe ich allerdings eine Domain an, dann soll er in das Document Root, das ich angegeben hab. Aber eben das funktioniert nicht. Er geht immer in den ersten definierten Virtualhost.


Spuckt das Log irgendwas aus, das damit zu tun hat?





<VirtualHost *>
ServerAdmin webmaster@german-bash.de
ServerName german-bash.de
ServerAlias www.german-bash.de
DocumentRoot /home/gbo/public_html
CustomLog /home/gbo/logs/access.log vhost
ErrorLog /home/gbo/logs/error.log
</VirtualHost>



Das einzige, das bei mir anders aussieht (neben Eintraegen fuer *:80 und *:443), ist


ServerName german-bash.de
ServerAlias german-bash.de *.german-bash.de


Der Rest sieht weitestgehend genauso aus, die restlichen Apache-Optionen habe ich nicht im Detail verglichen. Wenns damit aber nichts zu tun hatte, schaue ich meinen funktionierenden vhosts-Kram gerne nochmal durch - erinnere mich noch gut, wie lange es damals gebraucht hat, bis das hier lief...

-khs

niLs
04.01.2005, 15:00
evtl. ist es auch ein rechte-problem ...

was sagt denn ein ls -al /home oder ls -al /home/gbo/ ?

Mac Fly
04.01.2005, 17:01
Funktioniert immer noch nicht. Am ServerAlias lags also auch nicht.
So siehts jetzt aus:
NameVirtualHost 213.239.214.167

<VirtualHost 213.239.214.167>
ServerAdmin webmaster@german-bash.de
ServerName german-bash.de
ServerAlias german-bash.de *.german-bash.de
DocumentRoot /home/gbo/public_html
CustomLog /home/gbo/logs/access.log vhost
ErrorLog /home/gbo/logs/error.log
</VirtualHost>

<VirtualHost 213.239.214.167>
ServerAdmin webmaster@back2future-soundcrew.de
ServerName back2future-soundcrew.de
ServerAlias back2future-soundcrew.de *.back2future-soundcrew.de
DocumentRoot /var/www/localhost/htdocs
CustomLog /home/netkiffer/logs/access.log vhost
ErrorLog /home/netkiffer/logs/error.log

Ach ja, die Rechte... Wem sollten denn die Files und Ordner gehören? Der Apache läuft mit user=nobody und group=nogroup

/home/gbo sieht so aus:
dedi conf # ls -la /home/gbo/
total 972
drwxr-xr-x 7 gbo users 4096 Jan 4 09:25 .
drwxr-xr-x 6 root root 4096 Dec 30 22:53 ..
-rw-r--r-- 1 gbo users 10054 Jan 4 16:51 .bash_history
-rw-r--r-- 1 gbo users 232 Dec 18 15:05 .bash_profile
-rw-r--r-- 1 gbo users 812 Dec 18 15:05 .bashrc
-rw-r--r-- 1 gbo users 39 Jan 2 03:09 .htpasswd
drwxr-xr-x 3 gbo users 4096 Dec 30 17:44 .mc
-rw-r--r-- 1 gbo users 5929 Jan 2 02:52 .viminfo
-rw-r--r-- 1 gbo users 726 Dec 29 02:36 2do.txt
-rw-r--r-- 1 gbo users 893274 Dec 28 04:12 DB92571.sql
drwxr-xr-x 9 gbo users 4096 Dec 31 00:11 Mail
-rw-r--r-- 1 gbo users 16384 Dec 31 10:51 dns_cache.db
drwxr-xr-x 2 gbo users 4096 Jan 4 03:48 logs
drwxr-xr-x 13 gbo users 4096 Jan 4 09:24 public_html
drwxr-xr-x 2 gbo users 4096 Dec 31 10:52 webalizer
-rw-r--r-- 1 gbo users 8615 Dec 27 22:57 webalizer.conf

Die Index darin:
dedi conf # ls -la /home/gbo/public_html/index.php
-rw-r--r-- 1 gbo users 17787 Dec 31 10:51 /home/gbo/public_html/index.php

Also ich weiss nich... egal, welche Domain oder auch die IP, es wird immer alles nach /home/gbo/public_html/ gelenkt...

khs
04.01.2005, 18:12
Ich habe jetzt mal die komplette Config verglichen - bis auf Sachen, die damit wirklich nichts zu tun haben duerften, unterscheidet sie sich an den relevanten Stellen nicht.

Mit dem Resolving (DNS) hat es aber nicht zufaellig was zu tun? Hast du einen eigenen DNS? Loest der alle Hostnamen lokal richtig auf?

Poste doch mal einen Logfile-Ausschnitt fuer Zugriffe auf die versch. vhosts.

-khs

niLs
05.01.2005, 10:29
Hi,
Versuch mal dem user gbo auch die gruppe nobody zu geben:


usermod -G users,nobody gbo

nun probier mal nen


chown -R gbo:nobody /home/gbo

vielleicht klappt das ja

Mac Fly
05.01.2005, 15:20
Dem User noch die gruppe nobody zu geben hat auch nichts gebracht. Sollte das nicht nogroup sein?

Das is wirklich ganz komisch.
Der erste VHost (german-bash.de) zeigt ja auf /home/gbo/public_html
Der zweite (back2future-soundcrew.de) zeigt auf /var/www/localhost/htdocs

Und egal, welche URL ich nehme, er leitet immer zum ersten. Den soll er ja eigentlich nur nehmen, wenn er passt oder wenn kein anderer passt. Stimmt doch, oder?

/home/gbo/logs/access.log

Aufruf http://german-bash.de
german-bash.de 81.169.145.11 - - [05/Jan/2005:15:20:34 +0100] "GET / HTTP/1.1" 200 346 "-" "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5) Gecko/20041231 Firefox/1.0" VLOG=-

Aufruf back2future-soundcrew.de
german-bash.de 81.169.145.11 - - [05/Jan/2005:15:20:54 +0100] "GET / HTTP/1.1" 200 346 "-" "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5) Gecko/20041231 Firefox/1.0" VLOG=-

Aufruf http://$ip
german-bash.de 217.227.98.221 - - [05/Jan/2005:15:21:01 +0100] "GET / HTTP/1.1" 200 346 "-" "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5) Gecko/20041231 Firefox/1.0" VLOG=-

In der /var/log/apache/access_log sowie in den error logs ist nichts drin...

khs
05.01.2005, 15:58
Dem User noch die gruppe nobody zu geben hat auch nichts gebracht. Sollte das nicht nogroup sein?


Wenn es fehlende Rechte waeren, wuerde es im $error_log stehen.

Setz mal


HostnameLookups Off


Ist zwar eher so ein Bauch-Tip, aber manchmal sind die ja nicht sooo weit hergeholt...

-khs

Mac Fly
10.01.2005, 20:25
Ich hab den Fehler. Die Domains werden atm noch von Starto verwaltet. Und die schreiben die IP anstatt die Domain in HTTP_POST :(

Aber trotzdem vielen vielen Dank für eure Hilfe!

theton
10.01.2005, 22:35
Also, dass vhosts bei Strato nicht funktionieren, kann ich nicht bestätigen. Ich habe auch einen Server bei Strato und die Vhosts laufen wunderbar. Allerdings habe ich mich für Debian entschieden und habe den Apache "per Hand" kompiliert (brauchte nen paar Features für PHP, die der Debian-Apache nicht bietet). Hier mal ein VHost-Beispiel, das bei mir laeuft.



<VirtualHost 123.123.123.123>
ServerAdmin meine@email.org
DocumentRoot /home/www/theton
ServerName meine-domain.org
ServerAlias host.meine-domain.org
</VirtualHost>


Apache compilieren ist nicht allzu schwer (eine kleine Anleitung findet sich zum Beispiel in der INSTALL-Datei der PHP-Sourcen). Dadurch kann man alles, was mit Apache zu tun hat, schön in einem Verzeichnis unterbringen und behält die Übersicht über die installierten Server-Programme).