- ベストアンサー
PHPスクリプトにプロキシを弾かせたいのですが。
プロキシからの書き込みを禁止する機能のないphpスクリプトに そういう機能を付加するにはどうすればよいでしょう。 おわかりになる方、教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
荒らし対策だと思われますので、そのつもりで書いてみます。 PHPの、というわけでは無いのですが、頼まれてプロキシ対策処理を作ったことがあります。 結果から言うと、HTTPやopen proxy list(ブラックリスト)の更新くらいでは、多少防げる程度で、あまり効果がありません。 それは、この程度の対応では匿名proxyかどうか判断できないからです。そして、インターネットで外出先から録画が出来るHDDレコーダーが匿名proxyだったりして国内ですら膨大な数の匿名proxyが存在して(海外にもいっぱいあります)、それら全てを弾くことはほぼ無理です。 個人的にはhttpをやめてhttpsにするのがいいかな、と思います。現状、HDDレコーダのようなopen proxyはhttpsに対応していないので、サーバ側が許されるのならhttpsで掲示板を運営すれば、これらを拒否できると思います。そして、会社その他で正しく運用しているproxyはhttpsでも大丈夫ですので、これら正しくproxyを使っている方はそのまま使えます(もし切りたければ、これらはほぼIP決めうちで弾けるでしょう)。 httpsに対応しているopen proxyもあるかもしれませんが、しばらくはそれらを手動でブラックリストに登録していれば何とかなるかな、と思います。 荒らし対策でなかったら全然関係ない話になってしますので、その場合はご容赦下さい。
その他の回答 (1)
- athanasius
- ベストアンサー率37% (361/964)
サーバ変数を拾ってみて、特定の変数があれば、弾くようにしたらどうですか? 私の知っているところだと、 HTTP_X_FORWARDED_FOR HTTP_VIA HTTP_FORWARDED があった場合は、プロクシ経由のアクセスだったりしました。 他にも色々と変数の名前もあるようなので、この方法で行う場合は調べてみてください。 DSBL でチェックしたりする方法もあるようですが、こちらは詳しくは知らないです。