一部のページを除いて、すべてのhttp://www.example.com/*URLをhttps://www.example.com/に書き直そうとしています。キャッチオールリライトを問題なく動作させることができます:
RewriteCond %{SERVER_PORT} 80
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
ただし、すべてのホームページをキャッチする前に例外を追加しようとすると、機能しません。また、(前のルールをコメントアウトして)自分で追加しようとすると、機能しません。
RewriteCond %{SERVER_PORT} 80
RewriteRule ^/?products/(.*) https://%{SERVER_NAME}/products/$1 [R,L]
そのため、サイトにはhttp->httpsを簡単に書き直したいページがいくつかあります。誰かが行った場合、たとえばhttp://.../products
に転送する必要があります。https://.../products
また、自分が持っているルールがすべて機能することを確認したいと思いwww.example.com/products
ますexample.com/products
。