Hoe maak je een beveiligde omgeving in jouw website?
Het is mogelijk om met .htaccess- en .htpasswd-bestanden een beveiligde directory aan te maken. Let op! Dit werkt alleen op Apache webservers!
Note: Voor alle cliënten van Alphamega is het mogelijk om een beveiligde directory aan te maken. Deze kun je instellen in het Technical Control Panel bij "directories".
Na het beveiligen van een directory
zal deze slechts enkel toegankelijk zijn voor een beperkte groep
bezoekers, namelijk alleen voor de bezoekers die jij wilt toelaten. Als
een bezoeker vervolgens naar een URL surft van een beveiligde
directory, dan verschijnt er een login-scherm waarin gevraagd wordt om
een gebruikersnaam en wachtwoord op te geven, om zo toegang te krijgen
tot de desbetreffende directory. Wordt er een verkeerde gebruikersnaam
of wachtwoord ingevoerd, dan zal de webserver de toegang tot de
directory weigeren.
In de volgende stappen wordt uitgelegd hoe je met behulp van .htaccess- en .htpasswd-bestanden een directory kunt beveiligen.
Stap 1: Het .htpasswd-bestand:
In
het .htpasswd-bestand worden de gebruikersnamen en de wachtwoorden in
gecodeerde vorm opgeslagen. Voor het coderen van wachtwoorden zijn op
het internet vele handige tools te vinden. Een voorbeeld hiervan kun je
vinden door op Password generator
te klikken. Voer hier een gebruikersnaam (bv: test) en 2 maal een
wachtwoord (bv: abc123) in en klik vervolgens op calculate. Er
verschijnt een nieuw venster met daarin de gebruikersnaam en het
gecodeerde wachtwoord in de vorm van "gebruikersnaam:wachtwoord" (
test:18ke2UQu0GeFM ).
Selecteer en kopiëer deze regel. Open een simpele tekst-editor, zoals kladblok en maak een nieuw bestand aan. Plak de gekopieerde regel in het bestand. Zo kun je dus voor iedere gebruiker een nieuwe regel aanmaken met de gebruikersnaam en het gecodeerde wachtwoord, gescheiden door een dubbele punt. Sla tenslotte het bestandje op als ".htpasswd" (vergeet de punt en de aanhalingstekens niet).
Stap 2: Het .htaccess-bestand:
Open
een simpele tekst-editor, zoals kladblok en maak een nieuw bestand.
Kopieer en plak vervolgens onderstaande code in het bestand.
AuthUserFile /exacte/path/naar/.htpasswd
AuthGroupFile /dev/null
AuthName 'Beveiligde pagina'
AuthType Basic
<Limit GET POST>
require valid-user
</Limit>
Pas het path achter AuthUserFile aan naar het path waar jij het .htpasswd bestand gaat plaatsen. Je hebt hiervoor eerst het exacte path naar jouw webruimte nodig. Dit verschilt per hostingprovider. Voor Alphamega is dit /home/httpd/vhosts/jouwdomein.ext/httpdocs. Heb je een andere hostingprovider dan zal je dus eerst moeten achterhalen wat het exacte path is. Dit doe je als volgt. Maak een PHP-bestandje met de naam phpinfo.php en upload deze naar de webserver. Het phpinfo.php bestand bevat slechts de volgende code:
<?php
phpinfo()
?>
Open het bestandje in een browser (http://www.jouwdomein.ext/phpinfo.php) en je krijgt de PHP-instellingen van de webserver te zien. Zoek vervolgens naar de instelling DOCUMENT_ROOT om het exacte path naar jouw webruimte te vinden. Kopieer en plak dit pad achter AuthUserFile. Nu is dit alleen nog maar het path naar je webruimte. Heb je daar bv. je .htpasswd-bestand staan, dan ziet het volledige path er als volgt uit: /home/httpd/vhosts/jouwdomein.ext/httpdocs/.htpasswd. Staat het .htpasswd-bestand in een andere directory, dan zul je dit path dus nog moeten uitbreiden.
AuthName bevat de tekst die in het login scherm boven de invoervelden gebruikersnaam en wachtwoord komt te staan (in het voorbeeld is dit "Beveiligde pagina"). Je mag natuurlijk ook iets anders verzinnen.
Op AuthGroupFile en AuthType zal ik verder
niet ingaan en deze instellingen kun je ongewijzigd overnemen. Dit
geldt ook voor het deel tussen
Sla tenslotte het bestandje op als ".htaccess" (vergeet de punt en de aanhalingstekens niet).
Stap 3: Het .htaccess- en .htpasswd-bestand uploaden:
Start
een FTP-programma, zoals Smart-FTP en upload vervolgens het .htpasswd
bestand naar de locatie die je hebt aangeven in het .htaccess bestand
en het .htaccess-bestand in de map die je wilt beveiligen. Ziezo, de
map is beveiligd. Je kan dit testen door nu naar de URL te gaan van de
beveiligde map en als alles goed is gegaan, krijg je nu een loginscherm
te zien.
Veel succes met het beveiligen van je eigen mappen!


