ホームページ > バックエンド開発 > PHPチュートリアル > [php] リダイレクトを使用してフォーム処理ページが存在しないように装う

[php] リダイレクトを使用してフォーム処理ページが存在しないように装う

WBOY
リリース: 2016-06-13 12:17:32
オリジナル
964 人が閲覧しました

[php] リダイレクトを使用してフォーム処理ページが存在しないことを偽装します

PHP のリダイレクトは、リダイレクトされた JavaScript コードを直接出力することを除けば非常に簡単です。

元の PHP リダイレクトは次のようなものです:

<?phpheader("location: url");exit;?>
ログイン後にコピー

このステートメントを読むとすぐに、指定されたリダイレクト URL にすぐにジャンプします。

もちろん、PHP の場合は、まず header() 関数を PHP プログラムの先頭に配置する必要があり、他の header() 関数や setcookie() を配置できないことを明確にする必要があります。 Web ページ出力を使用する場合は、このステートメントを マークの前に配置する必要があります。 もちろん、リダイレクトが使用される場合は、通常、これを考慮する必要はありません。 , 以下の内容は基本的に読まれません。

リダイレクトを使用して、フォーム処理ページが存在しないように見せかけます。これにより、ハッカーが当社のフォーム処理ページを簡単に発見することができなくなります。フォーム処理ページには通常、データベース操作が含まれるためです。他人にURLを入力させてアクセスさせることはできません。

たとえば、次のページ redict.php は実際に存在しますが、正しいパラメーター a を入力しなかったり、このページを開くためのフォームを誤って送信したりすると、404 が返され、このページは存在しないと思います。一般に、このページで処理されるパラメータが a であることを簡単に推測できる人はいません。したがって、帳票処理ページを保護する効果があります。

この保護コードの考え方は非常に単純です。処理するパラメータがあるかどうかを判断するだけです。そのようなパラメータが存在しない場合、ディレクトリへのリダイレクトは行われません。保存されたページ:

<?phpif(empty($_REQUEST["a"])){	header("location: error.php");	exit;}else{	//这里仅仅是为了设置正常的编码输出“呵呵”而已!。	header("Content-type: text/html; charset=utf-8"); 	echo "呵呵";}?>
ログイン後にコピー



関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート