リダイレクトしようとしています特定のURL、私のドメインからhttpへの/ admin、他のすべてはhttpsにリダイレクトする必要があります。例:.htaccess for one url
Works:
http://example.com -> https://example.com
http://example.com/with-url -> https://example.com/with-url
https://example.com/admin -> http://example.com/admin
Does not work:
What I get (redirects from https to http, if under /admin):
https://example.com/admin/anything-below-here -> http://example.com/admin/anything-below-here
What I want (to stay on https):
https://example.com/admin/anything-below-here -> https://example.com/admin/anything-below-here
これは私がこれまでに得たものである:
RewriteEngine On
# force https:// for all except /admin
RewriteCond %{HTTPS} off
RewriteCond %{THE_REQUEST} !/admin [NC]
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# force http:// for /admin URLs
RewriteCond %{HTTPS} on
RewriteCond %{THE_REQUEST} /admin [NC]
RewriteRule^http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# all the others
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
は、誰もが私がここで行方不明です何を教えてもらえますか?どうもありがとう!
私はそのビットを追加しましたが、それはどちらか動作しません - それは私がHTTPとHTTPSの両方今でアクセス/管理しましょう。 'するRewriteCond%{THE_REQUEST}/adminに[/] * $ [NC] するRewriteCondの%{THE_REQUEST}/adminに[/] * $ [NC]' (私はわたってるしき行をスキップ! - これがすべてではありません私は今、.htaccessにいる)。 –
ああ、それはあなたが%{THE_REQUEST}を使っていて、リクエストURIの後に物事があるからです(HTTP/1.1など)。$は 'admin'の直後ではありません。 – Capsule
残念ながら、スラッシュの有無にかかわらず、何もしませんでした。 httpにリダイレクトされませんでした。 –