Apache rewrite rules loopen

Pagina: 1
Acties:

  • Spearhead
  • Registratie: November 2001
  • Laatst online: 14-08-2025
Ik wil mijn apache zo configureren dat 1) alle webdav connecties geweigerd worden en 2) dat alle http connecties herschreven worden naar https. Probleem is nu dat de volgende rules los wel werken, maar als je ze na elkaar gebruikt dan ofwel loopen ze, ofwel hij stopt niet na 1) zodat het eindresultaat altijd een redirect wordt naar https.

Wat heb ik al geprobeerd:
- Bij 1) heb ik de HTTP_FORBIDDEN error page ge-exclude, anders loopt hij daar ook op.
- Om te testen heb ik hem in plaats van Forbidden te laten geven een Redirect naar google gedaan, en dat werkte meteen goed.
- Ik heb bij de rewrite de L (van last rule) mee gegeven maar dat haalt niets uit.

code:
1
2
3
4
5
6
7
8
RewriteEngine on
RewriteLog /var/log/rewritelog
RewriteLogLevel 2
RewriteCond %{HTTP_USER_AGENT} ^Microsoft-webdav-MiniRedir [NC]
RewriteRule !/error/HTTP_FORBIDDEN\.html\.var - [F,L]
#RewriteRule .* www.google.nl [L,R]
RewriteCond %{HTTPS} !=on
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

  • Spearhead
  • Registratie: November 2001
  • Laatst online: 14-08-2025
Inmiddels opgelost. Voor wie er ook nog eens tegen aan loopt: Je moet de /error directory excluden van de rewrite, dan gaat het wel goed:

code:
1
2
3
4
5
6
7
RewriteEngine on
#RewriteLog /var/log/rewritelog
#RewriteLogLevel 2
RewriteCond %{HTTP_USER_AGENT} ^Microsoft-webdav-MiniRedir [NC]
RewriteRule !^/error/.* - [F,L]
RewriteCond %{HTTPS} !=on
RewriteRule !^/error/.* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]