[WordPress] PHP に特定のページにのみ SSL を強制します。

スポンサーリンク

質問

私のワードプレスの 1 つのページを設定するためのソリューションを発見したサイトの 1 つではなく 2 つのページに ssl を適用しようとしているが、https を使用します。場合は様々 なを試みたまたはステートメントが、構文が正しいを取得できないようです。

以下私の場合は 1 つのページ上で完全に動作するステートメント:

if (!empty($_SERVER['HTTPS']) && !empty($_SERVER['REQUEST_URI']))
   { 
   if ($_SERVER['HTTPS'] == 'on' && $_SERVER['REQUEST_URI'] != '/bill-pay/')
       {
         header("Location:http://example.com{$_SERVER['REQUEST_URI']}", 301);
         exit;
       }
   elseif ($_SERVER['HTTPS'] != 'on' && $_SERVER['REQUEST_URI'] == '/bill-pay/') 
       {
         header("Location: https://example.com{$_SERVER['REQUEST_URI']}", 301);
         exit;
       }
   }

明快のために私は 1 つのページのために働く私のバージョンを追加しました


答え

思っていたまっすぐ進む.

if (!empty($_SERVER['HTTPS']) && !empty($_SERVER['REQUEST_URI']))
{ 
   if ($_SERVER['HTTPS'] == 'on' && !($_SERVER['REQUEST_URI'] == '/bill-pay/' || $_SERVER['REQUEST_URI'] == '/other-page/'))
   {
     header("Location:http://example.com{$_SERVER['REQUEST_URI']}", 301);
     exit;
   }
   elseif ($_SERVER['HTTPS'] != 'on' && ($_SERVER['REQUEST_URI'] == '/bill-pay/' || $_SERVER['REQUEST_URI'] == '/other-page/')) 
   {
     header("Location: https://example.com{$_SERVER['REQUEST_URI']}", 301);
     exit;
   }
}

…、トリックを行う必要があります

http://stackoverflow.com/questions/28457176/force-ssl-only-on-certain-pages-with-php

スポンサーリンク

Leave a Reply