SSLでの問い合わせフォームとかとか
よく、問い合わせフォームはsslでとなった場合、
すべての問い合わせフォームへのリンク先をhttpsに修正するのは面倒だ。
また、テスト環境を下層ディレクトリに創った場合、テスト環境で
リンクチェックが確認できないという状況にもなりかねない。
そこで、
問い合わせフォームがあるディレクトリに
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
の.htaccessを置く
あと、問い合わせフォームからのリンクが相対の場合はhttpsでその後
遷移してしまうので、ドキュメントルート直下の.htaccess には
下記を記述しておくと良いだろう。
RewriteEngine on
RewriteCond %{HTTPS} on
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [R,L]
!ここで注意!
cssやimageファイルをコンタクトフォームで読んでいる場合、上記の設定だと
再度、cssやimageファイルだけhttpにリダイレクトされるので
それぞれのディレクトリに
RewriteEngine offと書いた.htaccessを置きましょう。
※特定のファイルは外したい場合(index.html と / でアクセスしたときはhttpでアクセスさせる)
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} !(index\.html|/$)
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
RewriteCond %{HTTPS} on
RewriteCond %{REQUEST_URI} (index\.html|/$)
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [R,L]