logo netland

wat is CMS?
aanvraag toegang CMS

Netland hosting

Uw website beveiligen met .htaccess

Met htaccess is het mogelijk om de toegang tot een directory te 'sturen' (Linux webruimte). Dit doet u door een ascii-file genaamd .htaccess (let op de punt) te plaatsen in de betreffende directory. In deze file worden opdrachten opgenomen. Een htaccess file werkt voor de directory waarin de file geplaatst wordt en de directories daaronder. Binnen een website mogen meerdere files gebruikt worden.

Afsluiten directory-listing

In veel gevallen is het niet wenselijk dat bezoekers de inhoud van directories kunnen bekijken. Dit kan opgelost worden door in iedere directory het bestand index.html te zetten. Index.html wordt nl. altijd automatisch door de browser geopend, waardoor een directory listing voorkomen wordt. Voor een uitgebreide website is dit omslachtig. Daarnaast is het zeer omslachtig deze pagina's aan te passen. Htaccess is een efficiëneter oplossing.

  • Maak een .htaccess file
  • zet hierin het commando options -indexes

Het is nu niet meer mogelijk om de directory-inhoud van de huidige en de ondergelegen directory's op te vragen. Plaats de .htaccess file in de www-directory en uw hele site is beschermd. Variaties:

  • options +indexes
    zet de listing aan.
  • IndexIgnore *.gif *.jpg
    Sta directory listing toe, maar geef geen gif en jpg-files weer.

Bezoekers doorsturen naar een andere pagina

Met de toevoeging: Redirect /dir/page1.htm http://mydomain/somedir/page2.htm. Is het mogelijk om bezoekers van pagina1.htm door te sturen naar http://mydomain/somedir/page2.htm.

Afvangen fouten

U kent ongetwijfeld de lelijke 404 foutmelding die u ziet als een bepaald pagina niet meer bestaat. Deze fouten zijn op te vangen. Op het moment dat er een dergelijke fout ontstaat, kan de bezoeker doorgestuurd worden naar een door u te bepalen pagina. Voeg (een van de) regels toe aan uw .htaccess file:

ErrorDocument 403 /somedir/page1.html
ErrorDocument 404 /somedir/page2.html

etc.

Successful Client Requests Client Request Redirected
200 OK
201 Created
202 Accepted
204 No Content
205 Reset Content
206 Partial Content
300 Multiple Choices
301 Moved Permanently
302 Moved Temporarily
303 See Other
304 Not Modified
305 Use Proxy
Client Request Errors Server Errors
400 Bad Request
401 Authorization Required
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable (encoding)
407 Proxy Authentication Required
408 Request Timed Out
409 Conflicting Request
410 Gone
411 Content Length Required
412 Precondition Failed
413 Request Entity Too Long
414 Request URI Too Long
415 Unsupported Media Type
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported

Afsluiten directory met een wachtwoord

Met htaccess is het mogelijk om een bepaalde directoy af te sluiten met een wachtwoord. Wilt u een of meerdere gebruikers toegang geven, plaats dan een .htaccess file met de volgende inhoud:

AuthUserFile /home/gebruiker/home/gebruiker/www/toegang/.htpasswd
AuthGroupFile /dev/null
AuthName SecretWebsite
AuthType Basic

<limit GET POST>
require valid-user
</limit>

In dit voorbeeld wordt het wachtwoord en gebruikersnaam van de mensen die toegang mogen krijgen, opgeslagen in de directory /home/gebruiker/home/gebruiker/www/toegang/. Om een gebruiker toe te voegen moet u met ssh (secure telnet) inloggen op de server om een wachtwoordfile (.htpasswd) te creeren. De inloggegevens voor ssh zijn gelijk aan de inloggegevens voor ftp. Ga naar de juiste directory (in dit geval /home/gebruiker/home/gebruiker/www/toegang/) en voer het volgende commando uit:

htpasswd -c .htpasswd username

Vervang username met de naam waarmee u wilt inloggen. De server vraagt nu om een wachtwoord en slaat dit gecodeerd op. De directory is nu beveiligd. Wilt u meerdere gebruikersnamen toevoegen? Gebruik dan na de eerste keer:

htpasswd .htpasswd username

Als u gebruikersnamen wilt wissen, opent u .htpasswd en verwijderd de gewenste regel(s).

Beveiligen van de .htaccess file zelf

Natuurlijk moet ook de .htaccess file beveiligd worden. Als iemand deze file kan benaderen, zou deze persoon meteen weten waar bijvoorbeeld de .htpasswd file staat. Voeg daarom toe:

<files .htaccess>
order allow,deny
deny from all
</files>

De eerste regel geeft aan dat het commando 'deny' alleen geldt voor de file .htaccess. De derde regel geeft aan dat niemand toegang heeft (iedere toegang wordt geweigerd). Het opvragen van deze file zal nu resulteren in een error 403 (Forbidden).

Als extra beveiliging kan aan de file via ssh de permissie 644 gegeven worden (chmod 644).



© 1993-2010 Netland Internet Services BV, disclaimer en voorwaarden. 08-09-2010 23:12