Webstick.nl logo Webdesignburo en Wordpress-blog

Wat is een .htaccess bestand? | Set up [2024] 💥

Een .htaccess bestand opzetten voor een HTML-site


Een .htaccess-bestand leidt URL's om. Als je Wordpress gebruikt, gebruik je een cache-plug-in die veel van het omleiden doet, maar soms is er handmatig werk nodig om alles precies goed te krijgen.


Advertisement

Divi Ad 680px


Een .htaccess bestand opzetten voor een HTML-site is eenvoudig als u gewoon de codes die we u hier geven in uw .htaccess bestand zet. Als u een HTML-website maakt denk er dan aan dat Google niet van duplicate content houdt. Dat heeft in de eerste plaats betrekking op het niet stelen van teksten van andere websites, maar ook binnen de eigen website komt veel duplicate content voor als u hier geen stokje voor steekt.

Dit tutorial geeft u de belangrijkste re-directs die u in uw .htaccess moet hebben staan. P.S.: Voor een CMS-website kunt u veel van deze re-directs gebruiken maar in veel gevallen is het werken met plugins aanbevolen!

Alleen al voor de homepage zijn er vele voorbeelden te noemen van URL's die allemaal dezelfde content weergeven, namelijk:

Ik gebruik de URL van onze website als voorbeeld..

  1. http://www.webstick.nl
  2. http://www.webstick.nl/
  3. http://www.webstick.nl/index.php
  4. http://webstick.nl
  5. http://webstick.nl/
  6. http://webstick.nl/index.php

Al deze versies bestaan ook als https-versie!!


Al deze URL's worden in het geval van onze website terug geleid naar https://webstick.nl wat er voor zorgt dat er voor Google maar een URL is om te indexeren. Het omleiden van URL's noemen we re-directing. Het re-directen doen we met een .htaccess bestand in de root van uw domein, voor Linux hosting is dit de standaard map public_html/ en op Windows hosting wordt niet met .htaccess gewerkt.

Windows hosting is geen prettig hostingsysteem, wij werken hier niet mee zelf, informatie hiervoor zult u op deze website niet aantreffen, maar er zijn genoeg andere websites die u kunnen helpen als u dit type hosting heeft.

Een .htaccess is een gewoon tekstbestand wat u op de server ombenoemd naar .htaccess. Ik ga u de re-direct codes geven voor een Linux server:

Om ervoor te zorgen dat er geen trailing slash op het eind van uw URL's komt te staan zet u de volgende regels code in uw bestand:


#verwijder trailing slash

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ $1 [R=301,L]

Verwijder .html op het einde van URL's:


#verwijder .html

RewriteCond %{THE_REQUEST} \.html
RewriteRule ^(.*)\.html$ /$1 [R=301,L]

Http URL's omleiden naar https als u een SSL-certificaat gebruikt voor een veilige verbinding:


#http to https
    
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Comprimeren van bestanden voor een snellere laadtijd:


# comprimeer text, html, javascript, css, xml:
	
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript

# Of comprimeer bepaalde bestandstypen per extensie:
<files *.html>
SetOutputFilter DEFLATE
</files>

Bestand caching voor een snellere laadtijd. Laat browsers bestanden opslaan en uit geheugen weergeven. Gebruik de gehele code in 1x dan bent u meteen klaar voor alle veelvoorkomende type bestanden:


# Expires headers
<IfModule mod_expires.c>
 
ExpiresActive on
ExpiresDefault "access plus 1 month"
 
# CSS
ExpiresByType text/css "access plus 1 year"
 
# Data interchange
ExpiresByType application/json "access plus 1 week”
ExpiresByType application/xml "access plus 1 week”
ExpiresByType text/xml "access plus 1 week”
 
# Favicon (cannot be renamed!)
ExpiresByType image/x-icon "access plus 1 year”
 
# HTML components (HTCs)
ExpiresByType text/x-component "access plus 1 month"
 
# HTML
ExpiresByType text/html "access plus 0 seconds"
 
# JavaScript
ExpiresByType application/javascript "access plus 1 year"
   
# Manifest files
ExpiresByType application/x-web-app-manifest+json "access plus 1 week”
ExpiresByType text/cache-manifest "access plus 1 week”
 
# Media
ExpiresByType audio/ogg "access plus 1 year”
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType video/mp4 "access plus 1 year"
ExpiresByType video/ogg "access plus 1 year”
ExpiresByType video/webm "access plus 1 year”
 
# Web feeds
ExpiresByType application/atom+xml "access plus 1 day”
ExpiresByType application/rss+xml "access plus 1 day”
 
# Web fonts
ExpiresByType application/font-woff "access plus 1 month"
ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
ExpiresByType application/x-font-ttf "access plus 1 month"
ExpiresByType font/opentype "access plus 1 month"
ExpiresByType image/svg+xml "access plus 1 month"
 
</IfModule>
<filesMatch "\.(js)$"> 
ExpiresDefault A29030400 
</filesMatch>

Http URL's omleiden naar https als u een SSL-certificaat gebruikt voor een veilige verbinding:


#http to https
    
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Alle non-www url's omleiden naar www:


#non-www naar www
    
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

Alle www url's omleiden naar non-www. Vervang onze domeinnaam door die van u:

#www naar non-www
    
RewriteCond %{HTTP_HOST} ^www\.webstick\.nl [NC]
RewriteRule ^(.*)$ http://webstick.nl/$1 [L,R=301]

De homepage de URL met index op het eind omleiden naar een schonere URL zonder index. Vervang onze domeinnaam door die van u:


#index redirect

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\\ HTTP/
RewriteRule ^index\$ http://webstick.nl/ [R=301,L]

Alle niet bestaande URL's omleiden naar uw 404 pagina. (Zorg dat u een 404 pagina gemaakt heeft of nog maakt):


#niet bestaande pagina's naar 404 pagina   
                                    
ErrorDocument 404 /404

Verder kunt u met een .htaccess bestand nog URL's omleiden die u verplaatst heeft. Een dergelijke omleiding noemt men een 301 re-direct. Vervang onze domeinnaam door die van u:


#losse redirects 
                                    
Redirect 301 /website-laten-maken http://www.webstick.nl

301 re-directs geven een directe opdracht de ene naar de andere URL om te leiden, de eerste URL begint met een "/" gevolgd door de pagina op de website, de tweede URL is verplicht volledig en begint dus altijd met "http".

P.S.: lijnen die beginnen met "#" zijn geheugensteuntjes voor u zelf, u kunt hier zelf eventueel een andere omschrijving aan geven.



Advertisement

Divi Ad 680px