htaccess - redirect auf https funktioniert nicht
Pro: https://exp-resso.com/blog/post/2011/08/securing-your-expressionengine-website-with-https
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond $1 ^(member|account|checkout|system) [NC]
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Diese teilt Ihrem server“, Wenn HTTPS aus ist und startet die Anforderung mit
Mitglied ODER Konto ODER Kasse ODER system (nicht case sensitive), Umleitung
zuhttps://current-domain/current-page
". Es ist eine schön einfache Methode
sperren von kompletten Unterordner /template-Gruppen.
Habe ich Hinzugefügt dies zu meiner htaccess-Datei wie dieser:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond $1 ^(sign-in|sign-up) [NC]
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
Allerdings, wenn ich an meine http://mydomain.com/sign-in, die URL ändert sich nicht zu https://mydomain.com/sign-in. Irgendeine Idee was falsch?
EDIT 1:
Meine htaccess hat auch die folgende (zu entfernen "www") und ich Frage mich, ob beide das problem verursachen könnte?
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
EDIT 2:
Prozess der Beseitigung, es stellt sich heraus, das das problem verursacht:
<IfModule mod_rewrite.c>
RewriteEngine On
# Removes index.php from ExpressionEngine URLs
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]
</IfModule>
Wenn ich kommentiere die RewriteRule, die https://is-Kräfte. , Was den Konflikt verursacht?
- Alle Gründe, warum Sie verwenden
.htaccess
style-Dateien anstelle der normalen Konfiguration? Diese Dateien sind fehleranfällig, langsam alles ab und sind schwer zu Debuggen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen (sign-in|sign-up) Zustand innen RewriteRule:
www
Bedingung für eine Weile, für die Reine PrüfungWas ist das? (Wenn port == 80 dann redirect )
RewriteEngine On
notwendig? Sehe ich genauso, kopieren Sie denRewriteCond $1 ^(member|account|checkout|system) [NC]
über dieRewriteRule
?Zuerst sicherstellen, dass das rewrite funktioniert auf Ihrem server und die htaccess ist zu Lesen (z.B. durch Erteilung einer Weiterleitung an jede URL).
Dann verwenden
RewriteCond %{REQUEST_URI} ^/(sign-in|sign-up)
stattRewriteCond $1 ^(sign-in|sign-up) [NC]
Funktioniert es und ist einfacher zu Lesen
Damit Sie htaccess sollte so Aussehen