0

redirect.php とリンクがありますが、WORDPRESS では機能しません。

サイトの「hello」リンクをクリックすると、redirect.php に移動し、ユーザーにスピナーが 5 秒間表示され、ユーザーはサイトから hello.com に移動します。

mod_rewrite に何か問題があるようですが、解決できません

非常に詳細な回答をいただければ幸いです。私はとても後輩です

これは私が持っているものです。

1.- ホームページに外部リンクがあります:

<a href="http://redirect.php?link=hello.com">Hello</a>

2.- redirect.php には、次のものがあります。

<html>
<head>
    ...
    <meta http-equiv="refresh" content="5;url=<?php echo $_GET['link'];?>" />
    ...
</head>
<body>
    <h1>You are leaving my site!</h1>
    <img src="/images/spinner.gif" alt="spinner" />
</body>
</html>
4

1 に答える 1

0

リンク<a href="http://redirect.php?...が正しくありません。<a href="/redirect.php?...これは、サーバー上の または任意のサブディレクトリである可能性が高いです。

また、プロトコルをリンク パラメータに含めるか、メタ タグの先頭に追加する必要があります。また、メタ タグでリンクを HTML エンコードし、リンク パラメータでドメイン名を適切に URL エンコードするようにしてください。

したがって、リンクを次のように変更します。

<a href="/redirect.php?link=http%3A%2F%2Ftest.com">Hello</a>

ウェブサイトのルートに redirect.php ファイルがある場合。メタタグを次のように変更します。

<meta http-equiv="refresh" content="5;url=<?php echo htmlentities($_GET['link'], ENT_QUOTES,);?>" />

また、リンク パラメータの有効性を検証したい場合や、リファラー URL ( $_SERVER('HTTP_REFERER')) をチェックして、自分の Web サイトからのリンクに対してのみリダイレクトを実行していること (つまり、オープン リダイレクトの脆弱性を作成しないこと) を確認することもできます。 )。

于 2012-11-10T16:22:30.593 に答える