it-swarm.com.de

Wie füge ich einer Umschreiberegel eine einzelne Dateiausnahme hinzu, die wp-admin einen Schrägstrich hinzufügt, indem ich zu HTTPS umleitung?

Ich muss dies ändern, damit eine Datei in wp-admin nicht durch https gezwungen wird:

# add a trailing slash to /wp-admin
RewriteCond %{REQUEST_URI} ^.*/wp-admin$
RewriteRule ^(.+)$ https://%{SERVER_NAME}/$1/ [R=301,L]

Dies erzwingt alle Anfragen an/wp-admin über SSL, aber es bricht ein wordpress Plugin, das auf wp-admin/admin-ajax.php zugreifen muss.

Gibt es eine Möglichkeit, die Regel so anzupassen, dass nicht verschlüsselte Anforderungen an diese eine Datei zugelassen werden?

vielen Dank!

2
codecowboy

Dies erzwingt alle Anforderungen an /wp-admin über SSL ...

Eigentlich nein, ist es nicht. Wie der Code-Kommentar angibt, wird "/wp-admin ein abschließender Schrägstrich hinzugefügt". Es werden nur URLs ausgewählt, die end in/wp-admin sind, sodass die URL wp-admin/admin-ajax.php bereits ausgeschlossen ist. Mit diesen Anweisungen müssen Sie nichts weiter tun.

Wenn wp-admin/admin-ajax.php zu HTTPS gezwungen wird, dann etwas anderes tut dies (möglicherweise sogar WordPress selbst).

RewriteCond %{REQUEST_URI} ^.*/wp-admin$
RewriteRule ^(.+)$ https://%{SERVER_NAME}/$1/ [R=301,L]

Nebenbei: Die Anweisung RewriteCond ist hier nicht erforderlich. Dies könnte wohl mit nur einer einzigen Richtlinie vereinfacht werden (die auch effizienter wäre):

 RewriteRule ^(.+/)?wp-admin$ https://%{SERVER_NAME}%{REQUEST_URI}/ [R=301,L]
2
MrWhite

Fügen Sie vor Ihrer Regel, die die Weiterleitung zu https vornimmt, eine zusätzliche Bedingung hinzu:

RewriteCond% {REQUEST_URI}! =/Wp-admin/admin-ajax.php

Dadurch wird verhindert, dass das Umschreiben/Umleiten für diese Datei erfolgt

1
covener

Habe es nicht getestet, aber das sollte es tun ...

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
Redirect /directory/file.html http://domain.com/directory/file.html
0
Jeremy