2016-11-10 1 views
0

Ich bin ziemlich neu in Apache. Ich möchte eine Website von Apache erstellen, so ist hier, was ich getan habe: Ich habe einen neuen Ordner erstellt in/var/www/html mit dem Namen 'test' Ich legte meine index.html, js und CSS-Dateien in den neuen Ordnerapache2 neue Website hinzufügen

Dann habe ich versucht, auf die Website von localhost/test zuzugreifen, die HTML-Seite angezeigt, aber ich kann nicht auf die js und CSS-Dateien zugreifen. In der Konsole heißt es "NetworkError: 404 nicht gefunden - http://localhost/main.js" Warum '/ test' fehlt von der URL?

Mein index.html hat <script type="text/javascript" src="main.js"> Kann jemand herausfinden, was los ist?

UPDATE Ich habe dir.conf und fügte hinzu, ‚DirectorySlash auf‘, jetzt ist es wie folgt aussieht: <IfModule mod_dir.c> DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm DirectorySlash on </IfModule> Ich bemerkte, dass, wenn ich versuche http://localhost/test zuzugreifen es ‚/‘ am Ende fügt hinzu, aber ich bin immer noch den gleichen Fehler.

+0

"Ich habe festgestellt, dass wenn ich versuche, auf http: // localhost/test zuzugreifen, fügt '/' am Ende hinzu, aber ich bekomme immer noch den gleichen Fehler." - Alles andere ist gleich: das wird nicht passieren. Sie müssen einen [mcve] bereitstellen, der genügend Informationen enthält, um das Problem zu reproduzieren. – Quentin

Antwort

0

Wenn Sie eine URL mit einem relativen Pfad verwenden, wird sie relativ zur letzten / in der relativen URL berechnet.

Da Sie besuchen:

http://localhost/test 

test getrimmt wird und main.js hinzugefügt wird.

Wenn Sie bei

waren
http://localhost/test/ 

dann die letzten / ist am Ende, so würde es http://localhost/test/main.js lösen.


Apache normalerweise leiten Sie von /test zu /test/ wenn test war ein Verzeichnis (genauer gesagt, dieses Problem zu vermeiden). Sie sollten Ihre Konfigurationsdateien bearbeiten the directoryslash directive zu aktivieren:

DirectorySlash on 

, dass der Standard ist, aber Sie müssen eine Version haben damit deaktiviert.

+0

Ich habe getan, was Sie vorgeschlagen haben, aber ich bekomme den gleichen Fehler. Ich habe aktualisiert, was ich getan habe. Ich habe apache2 von dem Befehl 'sudo apt-get install apache2' installiert und ich habe nichts getan. Normalerweise ist das alles standardmäßig. – Jean