1

データベース接続を確立しないphpファイルがあります。

次のようにURLをパラメータとして渡すと

 http://mydomain.com?q=http%3A%2F%2Fmyoranotherdomain.com

403 エラーが表示されます。

 You don't have permision to access blahblah.php file.

そして、paramのhttp部分を削除すると、次のように問題ありません

 http://mydomain.com?q=myoranotherdomain.com

ドメインをパラメーターとして URL に渡すにはどうすればよいですか?

4

1 に答える 1

0

最も簡単な方法は、次のように URL をエンコードすることです。

string urlencode ( string $str )

http://php.net/manual/en/function.urlencode.php

デコードも行う必要があります。

string urldecode ( string $str )

http://php.net/manual/en/function.urldecode.php

パラメータを特殊文字でエンコードするのは、常にこの方法です。

最終的解決:

「 http ://www.」を送信すると 403 エラーが発生します。GET経由。事前にエンコードされている場合でも。これに対する解決策はありますか?

答えは、http://www文字列をhtpwwwasherejavascript のようなものに置き換えて、php で再度置き換えることです。その理由は、上記のリンクによると、提供しているページへのインジェクション攻撃を防ぐなどのセキュリティ関連のものです。

于 2013-05-12T21:32:03.890 に答える