Na een aanpassing in .htaccess geeft je site een 500-fout? Een typfout, een niet-geladen module of een niet-toegestane instelling. Zo zoek je het uit en zet je de site terug.
Apache leest .htaccess bij elke aanvraag. Staat er een regel in die Apache niet begrijpt of niet toestaat, dan geeft de hele map een 500-fout. In het error_log staat dan bijvoorbeeld Invalid command 'RewriteEngine', perhaps misspelled or defined by a module not included in the server configuration of php_value not allowed here.
Belangrijk: nginx leest .htaccess helemaal niet. Draait je site op nginx, dan hebben regels in .htaccess geen effect en moeten ze in de serverconfiguratie worden omgezet.
Menunamen kunnen per versie of toestel iets anders heten. Loop de stappen op volgorde af en stop zodra het werkt.
Hernoem .htaccess tijdelijk (bijvoorbeeld naar .htaccess-test). Werkt de site dan weer, dan zit de fout in dat bestand.
Het log noemt de regel die Apache niet accepteert.
sudo tail -n 30 /var/log/apache2/error.logRewrite-regels hebben mod_rewrite nodig, headers mod_headers. Op een eigen server zet je ze aan; omhul regels anders met IfModule.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>php_value en php_flag werken alleen met mod_php. Bij PHP-FPM (CGI/FastCGI) geven ze een 500-fout; zet die instellingen in .user.ini.
Op een eigen server bepaalt AllowOverride in de Apache-configuratie welke soorten regels .htaccess mag bevatten. Bij AllowOverride None worden ze genegeerd.
Kom je er met deze stappen niet uit, of wil je het liever niet zelf doen? We kijken online mee of komen langs. Hulp op afstand kost €20 per uur; komen we langs, dan is de prijs op aanvraag. Je weet vooraf waar je aan toe bent.
Schrijf kort wat er misgaat en wat je al hebt geprobeerd. Kies of we bellen, online meekijken of langskomen.
Ga in het beheer naar Instellingen › Permalinks en klik op Opslaan. WordPress schrijft dan zijn eigen regels opnieuw, als het bestand schrijfbaar is.
Mogelijk draait de site op nginx, of staat AllowOverride uit. Vraag de hoster hoe redirects ingesteld moeten worden.
Test wijzigingen op een testomgeving of in een submap. Houd altijd een kopie van de werkende versie bij de hand.
Hulp nodig van een mens? Website-onderhoud · WordPress-support · Hosting en onderhoud · Alle oplossingen