1

単純な .htaccess の書き直しを作成して、単一のページで https を強制的に使用するようにしています (この質問への回答に触発されています)。

次のように、RewriteCond を使用する方がよいでしょうか。

RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} ^/page\.php$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

または、RewriteRule の条件を使用した短い代替方法:

RewriteCond %{HTTPS} off
RewriteRule ^page\.php$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
4

1 に答える 1

3

Apache を httpd サーバーとして使用している場合は、特定のタスクを達成するのに十分な単一の条件と単一のルールで完全に問題なく安全です。短いものよりも前者を使用する利点はありません。追加のルールまたはチェックを作成/適用する必要がない場合は、もう 1 つの追加条件を適用するのではなく、短いルールまたはチェックを使用します。あなたの状況はかなり単純なので、私はこれを言っていますhttps.1つの特定のページだけにリダイレクトする必要があります。

ここでAskApacheサイトを見ても、最良かつ効率的な方法である単一の RewriteRule とともに %{HTTPS} 変数を使用することが最善の方法であることが示唆されています。

あなたの懸念が私が上で述べたことと異なる場合はお知らせください。

于 2012-10-31T15:33:14.367 に答える