Apache2 Mehrere Seiten

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
lordvoldy
Beiträge: 22
Registriert: 13.09.2022 22:40:59

Apache2 Mehrere Seiten

Beitrag von lordvoldy » 25.02.2023 01:56:21

Hallo, ich habe eine Frage (vermutlich eine Anfängerfrage - aber bin ja einer :) ).

Ich habe auf einem Debian 11 (frisch installiert) den Apache2 Webserver installiert.
Funktioniert auch soweit und ich kann von anderen Rechnern im Netz auch diese "It Works"-Willkommensseite aufrufen. (http://192.168.41.11/)
Ich will 2 (und später evtl. mehr) Seiten auf diesem Server haben.
Diese sind nur dafür bestimmt dass ich sie von meinen Rechnern innerhalb meines LAN's aufrufen kann.

Meine Einrichtung zum Testen sieht nun folgendermaßen aus:
Ich habe im Verzeichnis /var/www/html/ zwei Ordner mit jeweils einer index.html Datei drin (halt mit anderem Text auf der Seite zum unterscheiden).
Dann im Verzeichnis /etc/apache2/sites-available sind zwei .conf Dateien drin wo halt die VirtualHost definiert sind.
Dann habe ich die Befehle a2dissite 000-default, a2ensite eins.conf, a2ensite zwei.conf und systemctl reload apache2 ausgeführt.
Danach apache2ctl configtest wo die Ausgabe dann "Syntax OK" war. Danach habe ich noch die /etc/hosts Datei angepasst.
Sollte doch eigentlich alles gehen, oder?

Aber wenn ich von einem anderem Rechner im Browser http://192.168.41.11/ eingebe erscheint nur die erste Seite.
Bei http://192.168.41.11/eins oder http://192.168.41.11/zwei erscheint im Browser die Meldung "The requested URL was not found on this server".

Was habe ich falsch gemacht?

tail -f /var/log/apache2/error.log, tail -f /var/log/apache2/access.log und tail -f /var/log/apache2/other_vhosts_access.log geben nichts aus?


/var/www/html

Code: Alles auswählen

root@lamp:~# ls -l /var/www/html/
drwxrwxr-x 2 www-data www-data  4096 Feb 25 00:20 eins
-rwxr-xr-x 1 root     root     10701 Feb 21 17:20 index.html
drwxrwxr-x 2 www-data www-data  4096 Feb 25 00:20 zwei

root@lamp:~# ls -l /var/www/html/eins/
-rwxrwxr-x 1 www-data www-data 347 Feb 25 00:20 index.html

root@lamp:~# ls -l /var/www/html/zwei/
-rwxrwxr-x 1 www-data www-data 348 Feb 25 00:20 index.html

/etc/apache2

Code: Alles auswählen

root@lamp:/etc/apache2# ls -l
-rw-r--r-- 1 root root  7224 Jun  9  2022 apache2.conf
drwxr-xr-x 2 root root  4096 Feb 21 17:20 conf-available
drwxr-xr-x 2 root root  4096 Feb 21 17:20 conf-enabled
-rw-r--r-- 1 root root  1782 Jun  9  2022 envvars
-rw-r--r-- 1 root root 31063 Jun  9  2022 magic
drwxr-xr-x 2 root root 12288 Feb 21 17:26 mods-available
drwxr-xr-x 2 root root  4096 Feb 21 17:26 mods-enabled
-rw-r--r-- 1 root root   320 Jun  9  2022 ports.conf
drwxr-xr-x 2 root root  4096 Feb 25 00:22 sites-available
drwxr-xr-x 2 root root  4096 Feb 25 00:22 sites-enabled

root@lamp:/etc/apache2# ls -l sites-available/
-rw-r--r-- 1 root root 1332 Jun  9  2022 000-default.conf
-rw-r--r-- 1 root root 6338 Jun  9  2022 default-ssl.conf
-rw-r--r-- 1 root root  215 Feb 25 00:15 eins.conf
-rw-r--r-- 1 root root  215 Feb 25 00:16 zwei.conf

root@lamp:/etc/apache2# ls -l sites-enabled/  
lrwxrwxrwx 1 root root 28 Feb 25 00:22 eins.conf -> ../sites-available/eins.conf
lrwxrwxrwx 1 root root 28 Feb 25 00:22 zwei.conf -> ../sites-available/zwei.conf

/etc/apache2/sites-available/eins.conf (bei zwei.conf ist einfach jedes "eins" durch "zwei" ersetzt)

Code: Alles auswählen

root@lamp:/etc/apache2/sites-available# cat eins.conf 
<VirtualHost *:80>
    ServerAdmin webmaster@eins
    ServerName eins
    DocumentRoot /var/www/html/eins/
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

/etc/hosts

Code: Alles auswählen

root@lamp:~# cat /etc/hosts
# War schon vorher da
127.0.0.1       localhost
::1             localhost ip6-localhost ip6-loopback
ff02::1         ip6-allnodes
ff02::2         ip6-allrouters

# War schon vorher da
# --- BEGIN PVE ---
192.168.41.11 lamp.pi lamp
# --- END PVE ---

# Selber per Hand angelegt
192.168.41.11   eins
192.168.41.11   zwei

DeletedUserReAsG

Re: Apache2 Mehrere Seiten

Beitrag von DeletedUserReAsG » 25.02.2023 08:56:09

lordvoldy hat geschrieben: ↑ zum Beitrag ↑
25.02.2023 01:56:21
Was habe ich falsch gemacht?
Du hast da Sachen durcheinandergebracht: Wenn du namensbasierte vHosts nutzen möchtest, rufst du die auch mit dem Namen auf; in deinem Fall also http://eins und http://zwei. Wenn du hingegen http://[IP]/name aufrufst, dann wird versucht, auf das Verzeichnis /Pfad/zum/DocumentRoot/name/ des Default-vHosts zuzugreifen.

lordvoldy
Beiträge: 22
Registriert: 13.09.2022 22:40:59

Re: Apache2 Mehrere Seiten

Beitrag von lordvoldy » 25.02.2023 17:11:03

Ok. Das habe ich verstanden.
Was ich aber noch nicht verstehe ist wie ich die Seiten einzeln aufrufen kann.

Mit http://eins oder http://zwei kommt im Bworser nicht mal mehr diese Fehler 404 Seite sondern direkt "Server nicht gefunden".

Der Server hat den Hostname "lamp" und wenn ich http://lamp aufrufe kommt wieder die erste Seite (im Prinzip das gleiche wie http://192.168.41.11).

Die /etc/hosts Datei welche auf meinem Apache2 Server liegt wo ich die beiden Seiten eingetrage habe, habe ich ja hier gepostet.
Jetzt habe ich die /etc/hosts Datei auf meinem DNS Server noch angepasst aber ich habe irgendwie das Gefühl dass das falsch ist.
Denn sobald ich doch einen der drei Hostnames die ich eingefügt habe aufrufe, ist es doch immer so wie wenn ich einfach nur die IP Adresse aufrufe, oder?


Letzten Zeilen der /etc/hosts auf dem DNS Server

Code: Alles auswählen

# LAMP Test
192.168.41.11 lamp
192.168.41.11 eins
192.168.41.11 zwei

DeletedUserReAsG

Re: Apache2 Mehrere Seiten

Beitrag von DeletedUserReAsG » 25.02.2023 17:41:16

lordvoldy hat geschrieben: ↑ zum Beitrag ↑
25.02.2023 17:11:03
Mit http://eins oder http://zwei kommt im Bworser nicht mal mehr diese Fehler 404 Seite sondern direkt "Server nicht gefunden".
Die Namen werden aufgelöst, sprich: ein ping geht auf die richtige Adresse?

lordvoldy
Beiträge: 22
Registriert: 13.09.2022 22:40:59

Re: Apache2 Mehrere Seiten

Beitrag von lordvoldy » 25.02.2023 18:30:42

Ja und Nein. Es ist so wenn ich auf dem Rechner auf dem ich mich gerade befinde (Windows 7) in der hosts datei die zwei Einträge hinzufüge:
192.168.41.11 eins
192.168.41.11 zwei

Dann funktioniert alles. Ich kann mit dem Firefox auf http://eins und http://zwei zugreifen und es werden die entsprechenden Seiten angezeigt.
Auch pings gehen dann durch. Also denke ich mal dass auf dem Apache2 Server die Konfiguration richtig ist?

Wenn die Einträge nicht vorhanden sind treten die von mir beschriebenen Probleme auf. Lässt wohl darauf schließen dass ich eher ein grundsätzliches
Problem mit der Namensauflösung in meinem Netzwerk habe anstatt mit dem Apache2 Server, oder?

Ich benutze als DNS Server einen Raspberry PI mit installiertem PI-Hole. Ich habe in diesem jetzt mal DNS-Records für meine zwei Seiten hinzugefügt und ihn neugestartet.
Ich habe auch alles andere mal neugestartet (also den apache2 Server Rechner und den Rechner an dem ich gerade sitze).

Aber die Probleme bestehen immernoch. Pings gehen nicht und im Firefox kommt "Seite wurde nicht gefunden".

Antworten