Grundsätzlich kann ich über 127.0.0.1 problemlos auf alles zugreifen, aber wenn ich meine externe IP (123.123.123.123) verwende, erhalte ich die Meldung „Seite nicht gefunden“.
Mein Router leitet den HTTP-Port 80 an Port 8080 der internen IP-Adresse meines Servers weiter. Mit anderen Worten: (Anwendung: HTTP | Start: 80 | Ende: 8080 | Protokoll: Beide | IP-Adresse 192.168.0.101 | Aktivieren [JA]) Ich weiß, dass die Weiterleitung richtig funktioniert, denn wenn ich die Portweiterleitung beende, kann ich über meine externe IP auf meine Router-Seite zugreifen.
Meine virtuelle Hosts-Datei ist:
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /opt/lampstack-5.3.16-0/apps/wordpress
ServerName example.com
ServerAlias www.example.com
</VirtualHost>
und meine httpd.conf-Datei ist:
Listen 80
Servername localhost:80
DocumentRoot "/opt/lampstack-5.3.16-0/apache2/htdocs
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny, allow
deny from all
</Directory>
<Directory "/opt/lampstack-5.3.16-0/apache2/htdocs">
Options FollowSymLinks
AllowOverride None
Order allow, deny
allow from all
</Directory>
Antwort1
Sie verwenden namensbasiertes virtuelles Hosting. Wenn Sie versuchen, unter einem anderen Namen auf Ihre Website zuzugreifen, gelangen Sie zur Standardsite.
NameVirtualHost *:80
Servername localhost:80
Antwort2
Ich denke, das Problem entsteht dadurch, dass ein DocumentRoot angegeben wird, für das die Berechtigung verweigert wurde. Sie sollten jedoch die Fehlermeldung „403 Forbidden“ und nicht „404 Not Found“ erhalten (zumindest passiert das bei mir, wenn ich versuche, Ihre Konfiguration nachzuahmen).
DocumentRoot /opt/lampstack-5.3.16-0/apps/wordpress
da dieses Verzeichnis keinen Eintrag hat, <Directory >
erbt es die Standardberechtigungen von
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny, allow
deny from all
</Directory>
Versuchen Sie, die Denial-Zeilen auszukommentieren
#Order deny, allow
#deny from all
oder einen neuen Eintrag erstellen, um dieses Problem zu testen
<Directory "/opt/lampstack-5.3.16-0/apps/wordpress">
Options FollowSymLinks
AllowOverride None
Order allow, deny
allow from all
</Directory>
Notiz:Sie sollten zunächst versuchen, über eine IP-Adresse auf den Server zuzugreifen. Mit www.example.com kommen Sie nicht weiter, da hierfür kein DNS-Eintrag vorhanden ist (oder falls doch, verweist dieser nicht auf Ihren Server).
Antwort3
Es sieht so aus, als wäre es ein Routerproblem. Obwohl ich versucht habe, meinen Router neu zu starten, obwohl ich alles mit aktivierter und deaktivierter NAT-Umleitung versucht habe. Ich saß einfach nur da und mein Router hat sich selbst zurückgesetzt. Ich musste das Standardkennwort eingeben, um auf die Administratorseite meines Routers zu gelangen (anstelle des von mir festgelegten Kennworts). Danach hat alles gut funktioniert.
Versuchen Sie auch, nichts in Ihrer vhosts-Datei zu haben, das kann auch funktionieren
Die Moral der Geschichte: Probieren Sie zur Sicherheit einen anderen Router aus.