2017-05-17 10 views
1

私は誰かが私を助けてくれることを願っています。私はワードプレスのウェブサイトを持っています。私は、従業員のアクセスを許可したいだけです。私はまた、信頼できるIPアドレスのリストを追加したいと思いますしかし、だから私は...その方法は、私は一種の、このように、私たちのイントラネットサイトからのリンクを追加することができるようにHTTPのリファラーを使用するHTTP_REFERER&REMOTE_ADDR Combined

if (strpos($_SERVER["HTTP_REFERER"],'intranetsite.com') == true) 
    {  
echo "/"; 
    } 
else 
    { 
header('Location: http://wordpress.com/wp-admin') ; 
    } 

が欲しいです次のコードを使用します。

$allowlist = array(
    '00.0.000.000', 
    '00.00.0.000', 
); 

if(!in_array($_SERVER['REMOTE_ADDR'],$allowlist)){ 
    header('Location: http://wordpress.com/wp-admin'); 
} 

このコードを組み合わせる最も簡単な方法は?または、これを行うべきであるより良い方法がありますか?

私は何かを明確にする必要がある場合は、私に知らせていない場合は、これはすべて意味があることを願っています。

まだロープを学んで、私のコーディング能力の欠如についてお詫び申し上げます。どんな助けでも大歓迎です。

+0

if文で '&&'(と)を使って試してみましたか? 'if(strops(...)== true && in_array(...))'。 –

+1

3月から最後の質問をしたように、質問をぶら下げないでください。回答が得られた場合は、それを正しいものとしてマークしてください。それがなかったら、私たちに知らせてください。 –

+0

申し訳ありませんが、私の謝罪はそれを忘れ去ったままにするという意味ではありませんでした。あなたの提案をありがとう。 – tylery

答えて

2

セキュリティの観点からは、参照元はWebサイトへのアクセスを制限する信頼性の低い手段です。それは偽造することができ、すべてのブラウザが正しく送信するわけではありません。

ウェブサイトへのアクセスをより安全かつ統一的に制限する場合は、ウェブサイトのルートにあるApacheの.htaccessファイルを使用することを検討してください。

AuthType Basic 
AuthName "Restricted Access" 
AuthUserFile /var/www/your_path/.htpasswd 
Require valid-user 

order deny,allow 
deny from all 
allow from <your first IP> 
allow from <your second IP> 
allow from <your third IP> 
... 

認証ディレクティブとの最初のセクションでは、ユーザーがWebサイトにアクセスしたときに対して認証されますユーザ名と暗号化されたパスワードが含まれます.htpasswdのファイルを指定しています。このファイルを作成するには複数の方法がありますが、最も簡単な方法はthis oneのようなツールを使ってオンラインで行うことです。

第2セクションでは、ディレクティブの助けを借りてリストアップされたものを除いて、すべてのIPから接続が拒否されることを指定しています。

+0

私は.htaccessルートに行くことはおそらくもっと良い方法だろうと考えました。提案とコードの例をお寄せいただき、ありがとうございます。 – tylery

関連する問題