Apache2 zwei vHosts auf einer DDNS-Domain
Guten Tag,
ich möchte gerne auf ein Debian mehrere vHosts einrichten, die über einen DDNS Anbieter auf einer gleichen Adresse erreichbar sein sollen.
Das heisst ich habe z.B. zwei Seiten in jeweils einen Ordner unter var/www/ welche über meine DDNS Adresse erreichbar sein sollen.
Alle anderen unter var/www/ Ordner sollen nicht erreichbar sein, wenn für diese keine vHost Konfiguration unter sites-enabled erstellt wurde.
Ich habe für die zu erreichbaren Seiten jeweils eine Konfiguration angelegt, welche auch aktiv sind. Jedoch Funktioniert immer nur eine Seite, da der Server den Pfad der funktionierenden Seite scheinbar als root Pfad erkennt:
Für die Seite 1 habe ich die 000-default Config genommen und angepasst:
<VirtualHost *:80>
ServerName "DDNS-SEITE"
ServerAdmin "Meine Mail-Adresse"
DocumentRoot /var/www/seite1
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/seite1/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</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 ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Die Homepage2 ist genauso angelegt, nur auf den Ordner2 angepasst
Ich wollte ungern für jeden Unterordner unter var/www eine .htaccess Datei anlegen, deswegen wollte ich es gerne über vHosts lösen.
Hab eich einen Denkfehler? Ist es vlt. nicht möglich vHosts auf eine gleiche URL erreichbar zu machen?
ich möchte gerne auf ein Debian mehrere vHosts einrichten, die über einen DDNS Anbieter auf einer gleichen Adresse erreichbar sein sollen.
Das heisst ich habe z.B. zwei Seiten in jeweils einen Ordner unter var/www/ welche über meine DDNS Adresse erreichbar sein sollen.
Alle anderen unter var/www/ Ordner sollen nicht erreichbar sein, wenn für diese keine vHost Konfiguration unter sites-enabled erstellt wurde.
Ich habe für die zu erreichbaren Seiten jeweils eine Konfiguration angelegt, welche auch aktiv sind. Jedoch Funktioniert immer nur eine Seite, da der Server den Pfad der funktionierenden Seite scheinbar als root Pfad erkennt:
Für die Seite 1 habe ich die 000-default Config genommen und angepasst:
<VirtualHost *:80>
ServerName "DDNS-SEITE"
ServerAdmin "Meine Mail-Adresse"
DocumentRoot /var/www/seite1
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/seite1/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</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 ${APACHE_LOG_DIR}/error.log
- Possible values include: debug, info, notice, warn, error, crit,
- alert, emerg.
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Die Homepage2 ist genauso angelegt, nur auf den Ordner2 angepasst
Ich wollte ungern für jeden Unterordner unter var/www eine .htaccess Datei anlegen, deswegen wollte ich es gerne über vHosts lösen.
Hab eich einen Denkfehler? Ist es vlt. nicht möglich vHosts auf eine gleiche URL erreichbar zu machen?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 278047
Url: https://administrator.de/contentid/278047
Ausgedruckt am: 25.11.2024 um 08:11 Uhr
21 Kommentare
Neuester Kommentar
Zitat von @Diamond72:
Reicht es wenn ich in den vHost Konfigurationen folgende Zeile nur änder und diesen in der Firewall öffne?
<VirtualHost *:80>
Sprich nur den Port.
Ja, sollte reichen.Reicht es wenn ich in den vHost Konfigurationen folgende Zeile nur änder und diesen in der Firewall öffne?
<VirtualHost *:80>
Sprich nur den Port.
In die apache config bei einem der beiden vhostes: <VirtualHost *:81>
Im Browser als URL: http://mein.server.lan:81
mfg
Cthluhu
Zitat von @Diamond72:
ja, meinst du die ports.conf ?
Dort habe ich
Listen PORT
NameVirtualHost *:PORT
eingetragen
Ja, das meinte ich. Den Listen eintrag brauchst du für beide Ports.ja, meinst du die ports.conf ?
Dort habe ich
Listen PORT
NameVirtualHost *:PORT
eingetragen
Aus dem stehgreif fehlt mir nichts mehr ein was fehlt. Was sagen die logs?
Ok, dann liegt vllt der Fehler auf Netzwerkebene. Folgende Vorschläge:
Mal mit "netstat -tln" oder "ss -tln" am Server schauen ob der Port der zweiten vHosts auch tatsächlich offen ist.
Port-Based NAT am Router? => zweiten Port freigeben
Firewall/Router logs?
Mit Wireshark auf den Netwerkkarten des Clients und Server mitschauen ob die überhaupt Pakete austauschen wenn du den zweiten vHosts ansprichts.
mfg
Cthluhu
Mal mit "netstat -tln" oder "ss -tln" am Server schauen ob der Port der zweiten vHosts auch tatsächlich offen ist.
Port-Based NAT am Router? => zweiten Port freigeben
Firewall/Router logs?
Mit Wireshark auf den Netwerkkarten des Clients und Server mitschauen ob die überhaupt Pakete austauschen wenn du den zweiten vHosts ansprichts.
mfg
Cthluhu
Zweite Zeile: da sollte der Zielport ebenfalls 81 sein.
Zitat von @Diamond72:
Ist es denn Möglich den Zugriff NUR auf zwei Ordner, welche aauf /var/www liegen zu beschränken?
Ja, du kannst ordnerweise Berechtigungen vergeben: http://httpd.apache.org/docs/2.4/mod/core.html#directoryIst es denn Möglich den Zugriff NUR auf zwei Ordner, welche aauf /var/www liegen zu beschränken?
http://httpd.apache.org/docs/2.4/mod/mod_authn_core.html#authname
zusätzlich noch mit mod_authz_core/mod_authn_core