PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Virtuelle Hosts



be1001
20.02.08, 10:11
Hallo,

ich möchte auf meinem OpenSuse 10.3 Server virtuelle Hosts einrichten. Aber irgendwie komme ich nicht weiter. Auf dem Server lauft schon Squirellmail einwandfrei. Squirrelmail ist auch von Aussen, d.h. von einem anderen Rechner erreichbar. Der Firewallport ist also offen. über "lokalhost" erreiche ich die Standartseite vom Apachen, Von aussen nicht.
Meine Fragen:
Wie kann ich die Virtuellen Hostets vom lokalhost testen, wie kann ich die virtuellen Hostes von meinem Windows XP Rechner testen ohne über das Internet zu gehen?
Meine DokumentenVerzeichnisse haben als Besitzer und Gruppe root und alle dürfen alles, auch Sonstige.
Der Server hat intern die IP 172.29.174.12
Meine http.conf ist eigentlich Standart:


#
# /etc/apache2/httpd.conf
#
# This is the main Apache server configuration file. It contains the
# configuration directives that give the server its instructions.
# See <URL:http://httpd.apache.org/docs-2.2/> for detailed information about
# the directives.

# Based upon the default apache configuration file that ships with apache,
# which is based upon the NCSA server configuration files originally by Rob
# McCool. This file was knocked together by Peter Poeml <poeml+apache@suse.de>.

# If possible, avoid changes to this file. It does mainly contain Include
# statements and global settings that can/should be overridden in the
# configuration of your virtual hosts.

# Quickstart guide:
# http://www.opensuse.org/Apache_Howto_Quickstart


# Overview of include files, chronologically:
#
# httpd.conf
# |
# |-- uid.conf . . . . . . . . . . . . . . UserID/GroupID to run under
# |-- server-tuning.conf . . . . . . . . . sizing of the server (how many processes to start, ...)
# |-- sysconfig.d/loadmodule.conf . . . . . load these modules
# |-- listen.conf . . . . . . . . . . . . . IP adresses / ports to listen on
# |-- mod_log_config.conf . . . . . . . . . define logging formats
# |-- sysconfig.d/global.conf . . . . . . . server-wide general settings
# |-- mod_status.conf . . . . . . . . . . . restrict access to mod_status (server monitoring)
# |-- mod_info.conf . . . . . . . . . . . . restrict access to mod_info
# |-- mod_usertrack.conf . . . . . . . . . defaults for cookie-based user tracking
# |-- mod_autoindex-defaults.conf . . . . . defaults for displaying of server-generated directory listings
# |-- mod_mime-defaults.conf . . . . . . . defaults for mod_mime configuration
# |-- errors.conf . . . . . . . . . . . . . customize error responses
# |-- ssl-global.conf . . . . . . . . . . . SSL conf that applies to default server _and all_ virtual hosts
# |
# |-- default-server.conf . . . . . . . . . set up the default server that replies to non-virtual-host requests
# | |--mod_userdir.conf . . . . . . . . enable UserDir (if mod_userdir is loaded)
# | `--conf.d/apache2-manual?conf . . . add the docs ('?' = if installed)
# |
# |-- sysconfig.d/include.conf . . . . . . your include files
# | (for each file to be included here, put its name
# | into APACHE_INCLUDE_* in /etc/sysconfig/apache2)
# |
# `-- vhosts.d/ . . . . . . . . . . . . . . for each virtual host, place one file here
# `-- *.conf . . . . . . . . . . . . . (*.conf is automatically included)
#
#
# Files marked are created from sysconfig upon server restart: instead of
# these files, you edit /etc/sysconfig/apache2



# Filesystem layout:
#
# /etc/apache2/
# |-- charset.conv . . . . . . . . . . . . for mod_auth_ldap
# |-- conf.d/
# | |-- apache2-manual.conf . . . . . . . conf that comes with apache2-doc
# | |-- mod_php4.conf . . . . . . . . . . (example) conf that comes with apache2-mod_php4
# | `-- ... . . . . . . . . . . . . . . . other configuration added by packages
# |-- default-server.conf
# |-- errors.conf
# |-- httpd.conf . . . . . . . . . . . . . top level configuration file
# |-- listen.conf
# |-- magic
# |-- mime.types -> ../mime.types
# |-- mod_autoindex-defaults.conf
# |-- mod_info.conf
# |-- mod_log_config.conf
# |-- mod_mime-defaults.conf
# |-- mod_perl-startup.pl
# |-- mod_status.conf
# |-- mod_userdir.conf
# |-- mod_usertrack.conf
# |-- server-tuning.conf
# |-- ssl-global.conf
# |-- ssl.crl/ . . . . . . . . . . . . . . PEM-encoded X.509 Certificate Revocation Lists (CRL)
# |-- ssl.crt/ . . . . . . . . . . . . . . PEM-encoded X.509 Certificates
# |-- ssl.csr/ . . . . . . . . . . . . . . PEM-encoded X.509 Certificate Signing Requests
# |-- ssl.key/ . . . . . . . . . . . . . . PEM-encoded RSA Private Keys
# |-- ssl.prm/ . . . . . . . . . . . . . . public DSA Parameter Files
# |-- sysconfig.d/ . . . . . . . . . . . . files that are created from /etc/sysconfig/apache2
# | |-- global.conf
# | |-- include.conf
# | `-- loadmodule.conf
# |-- uid.conf
# `-- vhosts.d/ . . . . . . . . . . . . . . put your virtual host configuration (*.conf) here
# |-- vhost-ssl.template
# `-- vhost.template



### Global Environment ################################################## ####
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests.

# run under this user/group id
Include /etc/apache2/uid.conf

# - how many server processes to start (server pool regulation)
# - usage of KeepAlive
Include /etc/apache2/server-tuning.conf

# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here. If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
ErrorLog /var/log/apache2/error_log

# generated from APACHE_MODULES in /etc/sysconfig/apache2
Include /etc/apache2/sysconfig.d/loadmodule.conf

# IP addresses / ports to listen on
Include /etc/apache2/listen.conf

# predefined logging formats
Include /etc/apache2/mod_log_config.conf

# generated from global settings in /etc/sysconfig/apache2
Include /etc/apache2/sysconfig.d/global.conf

# optional mod_status, mod_info
Include /etc/apache2/mod_status.conf
Include /etc/apache2/mod_info.conf

# optional cookie-based user tracking
# read the documentation before using it!!
Include /etc/apache2/mod_usertrack.conf

# configuration of server-generated directory listings
Include /etc/apache2/mod_autoindex-defaults.conf

# associate MIME types with filename extensions
TypesConfig /etc/apache2/mime.types
DefaultType text/plain
Include /etc/apache2/mod_mime-defaults.conf

# set up (customizable) error responses
Include /etc/apache2/errors.conf

# global (server-wide) SSL configuration, that is not specific to
# any virtual host
Include /etc/apache2/ssl-global.conf

# forbid access to the entire filesystem by default
<Directory />
Options None
AllowOverride None
Order deny,allow
Deny from all
</Directory>

# use .htaccess files for overriding,
AccessFileName .htaccess
# and never show them
<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>

# List of resources to look for when the client requests a directory
DirectoryIndex index.html index.html.var index.php

### 'Main' server configuration #############################################
#
# The directives in this section set up the values used by the 'main'
# server, which responds to any requests that aren't handled by a
# <VirtualHost> definition. These values also provide defaults for
# any <VirtualHost> containers you may define later in the file.
#
# All of these directives may appear inside <VirtualHost> containers,
# in which case these default settings will be overridden for the
# virtual host being defined.
#
Include /etc/apache2/default-server.conf


# Another way to include your own files
#
# The file below is generated from /etc/sysconfig/apache2,
# include arbitrary files as named in APACHE_CONF_INCLUDE_FILES and
# APACHE_CONF_INCLUDE_DIRS
Include /etc/apache2/sysconfig.d/include.conf


### Virtual server configuration ############################################
#
# VirtualHost: If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#
# Please see the documentation at
# <URL:http://httpd.apache.org/docs-2.2/vhosts/>
# for further details before you try to setup virtual hosts.
#
# You may use the command line option '-S' to verify your virtual host
# configuration.
#
Include /etc/apache2/vhosts.d/*.conf


# Note: instead of adding your own configuration here, consider
# adding it in your own file (/etc/apache2/httpd.conf.local)
# putting its name into APACHE_CONF_INCLUDE_FILES in
# /etc/sysconfig/apache2 -- this will make system updates
# easier :)
Meine Listen.conf, auch Standart, bisher kein SSL

# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports. See also the <VirtualHost> directive.
#
# http://httpd.apache.org/docs-2.2/mod/mpm_common.html#listen
#
# Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
#
# When we also provide SSL we have to listen to the
# standard HTTP port (see above) and to the HTTPS port
#
# Note: Configurations that use IPv6 but not IPv4-mapped addresses need two
# Listen directives: "Listen [::]:443" and "Listen 0.0.0.0:443"
#
#Listen 12.34.56.78:80
#Listen 80
#Listen 443

Listen 80


<IfDefine SSL>
<IfDefine !NOSSL>
<IfModule mod_ssl.c>

Listen 443

</IfModule>
</IfDefine>
</IfDefine>


# Use name-based virtual hosting
#
# - on a specified address / port:
#
#NameVirtualHost 12.34.56.78:80
#
# - name-based virtual hosting:
#
#NameVirtualHost *:80
#
# - on all addresses and ports. This is your best bet when you are on
# dynamically assigned IP addresses:
#
#NameVirtualHost *

Meine Vhost.conf die Datei habe ich von meinem alten Rechner übernommen, da läuft sie prima.


# Virtual Host Datei f�r Server "Apache" 172.29.170.12
#

<VirtualHost 172.29.174.12>
ServerName www.l1.org
DocumentRoot /Chris2/Apache/L1_org
ServerAdmin test@test.de
AccessFileName .htaccess
<Directory "/Chris2/Apache/L1_org/Bilder">
AllowOverride All
Options Indexes FollowSymLinks
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
#

#
<VirtualHost 172.29.174.12>

DocumentRoot /Chris2/Apache/L2_net
ServerName www.l2.net
AccessFileName .htaccess
<Directory "/Chris2/Apache/L2_net">
AllowOverride Authconfig
Options Indexes FollowSymLinks
Order allow,deny
Allow from all
</Directory>
ProxyRequests on
ProxyPass /zywall/ http://172.29.174.21/
ProxyPassReverse /zywall/ http://172.29.174.21/
ProxyPass /linksys/ http://172.29.174.64/
ProxyPass /flash_disk.cgi http://172.29.174.64/flash_disk.cgi/
ProxyPass /HDD_2_1_1 http://172.29.174.64/HDD_2_1_1/
ProxyPassReverse /linksys/ http://172.29.174.64/
ProxyPass /hager/ http://172.29.170.15/
ProxyPassReverse /hager/ http://172.29.170.15/
ProxyPass /axis/ http://axis.cdo/view/view.shtml
ProxyPass /axis-cgi/ http://axis.cdo/axis-cgi/
ProxyPassReverse /axis/ http://axis.cdo/view/view.shtml
ProxyPass /everfocus/ http://172.29.174.50
ProxyPassReverse /everfocus/ http://172.29.174.50
ServerAdmin info@test.de
</VirtualHost>
#

<VirtualHost 172.29.174.12>

DocumentRoot /Chris2/Apache/L3_com
ServerName www.l3.com
AccessFileName .htaccess
<Directory "/Chris2/Apache/L3_com">
AllowOverride Authconfig
Options Indexes FollowSymLinks
Order allow,deny
Allow from all
</Directory>
ProxyRequests on
ProxyPass /hager/ http://172.29.170.15/
ProxyPassReverse /hager/ http://172.29.170.15/
ProxyPass /hs http://172.29.170.90/hs
ProxyPass /hshtm http://172.29.170.90/hshtm
ProxyPass /htmico http://172.29.170.90/htmico
ProxyPass /htmbg http://172.29.170.90/htmbg
ProxyPassReverse /hshtm http://172.29.170.90/hshtm
ProxyPass /axis/ http://axis.cdo/view/view.shtml
ProxyPass /axis-cgi/ http://axis.cdo/axis-cgi/
ProxyPassReverse /axis/ http://axis.cdo/view/view.shtml
ProxyPass /solarlog/ http://172.29.174.75/
ProxyPassReverse /solarlog/ http://172.29.174.75/
ProxyPass /linksys/ http://172.29.174.64/
ProxyPassReverse /linksys/ http://172.29.174.64/
ProxyRemote server http://172.29.170.12:21473
ProxyPassReverse server http://172.29.170.12:21473
ServerAdmin info@test.de
</VirtualHost>


<VirtualHost 172.29.174.12>

ServerName www.F1.eu
DocumentRoot /Chris2/Apache/F1_eu
<Directory /Chris2/Apache/F1_eu>
Order Deny,Allow
</Directory>
ServerAdmin info@test.eu
<IfDefine SSL>
SSLEngine off
</IfDefine>
</VirtualHost>

Fehlermeldung beim start vom Apache:


Apache:~ # rcapache2 start
Starting httpd2 (prefork) [Wed Feb 20 10:06:08 2008] [warn] VirtualHost 172.29.174.12:0 overlaps with VirtualHost 172.29.174.12:0, the first has precedence, perhaps you need a NameVirtualHost directive
[Wed Feb 20 10:06:08 2008] [warn] VirtualHost 172.29.174.12:0 overlaps with VirtualHost 172.29.174.12:0, the first has precedence, perhaps you need a NameVirtualHost directive
[Wed Feb 20 10:06:08 2008] [warn] VirtualHost 172.29.174.12:0 overlaps with VirtualHost 172.29.174.12:0, the first has precedence, perhaps you need a NameVirtualHost directive
[Wed Feb 20 10:06:08 2008] [warn] VirtualHost 172.29.174.12:0 overlaps with VirtualHost 172.29.174.12:0, the first has precedence, perhaps you need a NameVirtualHost directive
[Wed Feb 20 10:06:08 2008] [warn] VirtualHost 172.29.174.12:0 overlaps with VirtualHost 172.29.174.12:0, the first has precedence, perhaps you need a NameVirtualHost directive
[Wed Feb 20 10:06:08 2008] [warn] VirtualHost 172.29.174.12:0 overlaps with VirtualHost 172.29.174.12:0, the first has precedence, perhaps you need a NameVirtualHost directive
done
Apache:~ #
Fehlermeldung wenn ich den Virtuellen Host aufrufen will:
Habe www.l1.org in der Hosttabelle vom Lokalhost eingetragen

Access forbidden!
You don't have permission to access the requested directory. There is either no index document or the directory is read-protected.
If you think this is a server error, please contact the webmaster.
Error 403
www.l1.org
Wed Feb 20 10:09:01 2008
Apache/2.2.4 (Linux/SUSE)

Was muss ich ändern, habe schon ganz runde Augen, trotz Kaffee.
Danke

marce
20.02.08, 10:16
Da fehlt wohl noch eine NameVirtualHost-Direktive.

Intern testen kannst Du das z.B. in dem Du Deine /etc/hosts bearbeitest, einen int. Nameserver einsetzt oder (parallel) noch IP/Port-Based virtual Hosts einsetzt.

be1001
20.02.08, 10:22
Was wird unter einer NameVirtualHost-Direktive verstanden? Was muss ich da noch eintragen und wo?
Bei meinem Lokalhost habe ich die /etc/hosts gefunden, das kann ich jetzt auch testen, bzw. ich bekomme die Fehlermeldung. Aber was muss ich bei meinem Windows XP rechner eintragen und wo? habe es mit /i386/hosts versucht, aber das klappt nicht.

marce
20.02.08, 10:27
http://httpd.apache.org/docs/2.0/vhosts/

die hosts-Datei ist bei XP unter C:\WINNT\system32\drivers\etc

be1001
20.02.08, 10:42
Danke die Hostdatei habe ich jetzt gefunden, bei mir (Windows XP pro) ist die aber unter C:\Windows\system32\drivers\etc, typisch Bill Gates.
Unter dem Link habe ich ein Tool zur Analyse beschrieben:
/usr/local/apache2/bin/httpd -S
nur bei OpenSuse stimmt der Pfad mal wieder nicht.
Wo muss ich da suchen?

marce
20.02.08, 10:45
Danke die Hostdatei habe ich jetzt gefunden, bei mir (Windows XP pro) ist die aber unter C:\Windows\system32\drivers\etc, typisch Bill Gates.
Nö. Typisch Anwender, je nach dem, in welches Verzeichnis der sein System installiert hat.

/ ist ja auch nicht immer auf /dev/sda1.


Unter dem Link habe ich ein Tool zur Analyse beschrieben:
/usr/local/apache2/bin/httpd -S
nur bei OpenSuse stimmt der Pfad mal wieder nicht.
Wo muss ich da suchen?
na, irgendwie hast Du den Apache ja sicher auch schon mal gestartet, oder? Nimm doch das.

Vermutlich sind die Dinger aber alle in $PATH enthalten, probier's also einfach mal mit dem Programmnamen.

be1001
20.02.08, 10:50
Starten tu ich einfach nur: rcapache2 start

marce
20.02.08, 10:51
AFAIK kennt das Ding auch noch andere Parameter.

be1001
20.02.08, 11:04
das habe ich gefunden, hilft aber auch n icht so richtig weiter:


Apache:~ # rcapache2 configtest
[Wed Feb 20 11:02:00 2008] [warn] VirtualHost 172.29.174.12:0 overlaps with VirtualHost 172.29.174.12:0, the first has precedence, perhaps you need a NameVirtualHost directive
[Wed Feb 20 11:02:00 2008] [warn] VirtualHost 172.29.174.12:0 overlaps with VirtualHost 172.29.174.12:0, the first has precedence, perhaps you need a NameVirtualHost directive
[Wed Feb 20 11:02:00 2008] [warn] VirtualHost 172.29.174.12:0 overlaps with VirtualHost 172.29.174.12:0, the first has precedence, perhaps you need a NameVirtualHost directive
[Wed Feb 20 11:02:00 2008] [warn] VirtualHost 172.29.174.12:0 overlaps with VirtualHost 172.29.174.12:0, the first has precedence, perhaps you need a NameVirtualHost directive
[Wed Feb 20 11:02:00 2008] [warn] VirtualHost 172.29.174.12:0 overlaps with VirtualHost 172.29.174.12:0, the first has precedence, perhaps you need a NameVirtualHost directive
[Wed Feb 20 11:02:00 2008] [warn] VirtualHost 172.29.174.12:0 overlaps with VirtualHost 172.29.174.12:0, the first has precedence, perhaps you need a NameVirtualHost directive
Syntax OK
Apache:~ # rcapache2 extreme-configtest
Syntax: OK
Apache:~ #

marce
20.02.08, 11:07
jetzt wären wir wieder bei #2 (http://www.linuxforen.de/forums/showpost.php?p=1621880&postcount=2), 1. Zeile.

be1001
20.02.08, 11:21
meine /etc/hosts/ habe ich bearbeitet, und dann bekomme ich ja die Fehlermeldung.

marce
20.02.08, 11:22
jetzt wären wir wieder bei #2 (http://www.linuxforen.de/forums/showpost.php?p=1621880&postcount=2), 1. Zeile.

1. Zeile:

Da fehlt wohl noch eine NameVirtualHost-Direktive.

2. Zeile:

Intern testen kannst Du das z.B. in dem Du Deine /etc/hosts bearbeitest, einen int. Nameserver einsetzt oder (parallel) noch IP/Port-Based virtual Hosts einsetzt.

be1001
20.02.08, 11:29
die hosttabelle habe ich geändert, einen Nameserver habe ich nicht, zum testen auch ein bischen viel, und IP-Virtuelle host kann ich nicht, da ich nur eine IP von aussen habe.

marce
20.02.08, 11:30
Der Unterschied zwischen einer 1 und einer 2 ist Dir aber schon bekannt, oder?

be1001
20.02.08, 11:47
Nicht so ganz.....

Oliski
20.02.08, 12:14
http://httpd.apache.org/docs/2.0/de/mod/core.html

viel spaß damit :) einfach mal nach NameVirtualHost suchen.

Apache2 unterscheid zwischen Ipbasierten und Namensbasierten Vhosts..