Bestanden niet zichtbaar na uploaden

Probleem

Je hebt bestanden op je website geplaatst en die worden niet zichtbaar. Je krijgt in plaats daarvan één van de volgende foutmeldingen:

  • 403 Forbidden
  • 404 Not Found
  • 500 Internal server error (of Serverside error)

Dit artikel heeft geen betrekking op het plaatsen van PHP-scripts of andere applicatiesoftware.

403 Forbidden: oorzaken en oplossingen

De bestanden of de directory waar ze in staan hebben niet de juiste rechten. Bestanden die je plaatst op shared webhosting moet over het algemeen voor iedereen leesbaar zijn.

Voor directories geldt dat deze voor iedereen tenminste uitvoerbaar moeten zijn, door het instellen van execute-rechten (vaak aangeduid met een x). Voor alle andere bestanden geldt dat deze voor iedereen tenmiste leesbaar moeten zijn, door het instellen van read-rechten (aangeduid met een r).

Bestandsrechten kun je wijzigen met SFTP of vanaf de SSH-shell met bijvoorbeeld:

chmod a+x directorynaam
chmod a+r pad/naar/bestand.png

Over het algemeen is het overigens niet nodig deze rechten handmatig aan te passen, dus nader onderzoek is wellicht aan te raden. Waarschijnlijk staat je SFTP-programma ingesteld om bepaalde rechten niet standaard over te nemen.

404 Not Found: oorzaken en oplossingen

  • Controleer of je bestanden zijn geplaatst in de www-directory of een onderliggende directory. Het www-deel hoef je bij het opvragen van de bestanden niet over te nemen. Dus een bestand dat in www/pad/naar/bestand.png staat haal je in je website aan via /pad/naar/bestand.png.
  • Controleer of de naam van het bestand overeenkomt met de naam in je URL. Let hierbij in het bijzonder op de volgende zaken:
    • Hoofd- en kleine letters moeten overeenkomen; op het door NederHost gebruikte Linux-besturingssysteem zijn Bestand.PNG, bestand.PNG en bestand.png drie verschillende bestanden. Het is conventie om in principe altijd alleen kleine letters te gebruiken.
    • Je refereert naar een bestand.html terwijl het bestand is geupload als bestand.htm omdat je drieletterige extensies gebruikt. Een .htm-bestand is prima, maar dan moet de referentie wel kloppen.
    • Er staan mogelijk spaties in of achter de bestandsnaam. Het is wel mogelijk om spaties te gebruiken maar deze moeten in de meeste gevallen op de juiste manier worden gecodeerd. Het is daarom over het algemeen beter om gebruik te maken van underscores (_) in plaats van spaties.

500 Internal server error: oorzaken en oplossingen

Deze foutmelding duidt in de meeste gevallen op een probleem met applicatiesoftware (zoals een PHP-script) maar kan ook opduiken bij het benaderen van 'gewone' bestanden. In de meeste gevallen betekent dit dan dat er een fout zit in een .htaccess-bestand in de betreffende folder.

Meer informatie over het oplossen van 500 Internal Server Error