1

私はphpにかなり慣れていませんが、学んでいます!クライアントの Web サイトにシンプルなフォームがあります。フォームをテストしていて、送信をクリックすると、次のエラーが表示されます。

フォーム メール スクリプト

Wrong referrer (referring site). For security reasons the form can only be used, if the referring page is part of this website.

Note for the Admin: Please add the name of your server to the referrer variable in the index.php configuration file: mywebsite.com

フォーム メール スクリプトを利用

フォームの構成ファイルとサポート ファイルを調べていますが、何を変更する必要があるのか​​正確にはわかりません。

上記の管理者メモの意味と修正方法を誰かに説明してもらえますか?

ありがとう。

4

4 に答える 4

2

あなたは明らかにあなたのページでフォームメールスクリプトを使用しています。他のドメインがフォームに送信するのを防ぐセキュリティ機能があります。これは、ボットがスクリプトを使用してスパムを送信するのを防ぐために行われます。

フォームメールスクリプトの構成またはスクリプト自体に、リファラーがリストされた配列または変数があります。これは、このフォームメールの呼び出しを許可するサイトです。このリストに独自のドメインを追加するか、この変数に割り当てる必要があります。

申し訳ありませんが、私はこのスクリプトを使用していないので、これ以上具体的にすることはできません。

于 2008-11-05T17:35:04.180 に答える
2

変更したい行は次のとおりです。

$referring_server = 'http://www.mywebsite.com, scripts';

次のように変更すると、おそらくうまくいきます。

$referring_server = 'yourdomain.com';
于 2008-11-05T18:16:44.907 に答える
0

表示されているエラーをすばやく検索すると、次のリンクが見つかりました:http: //www.stadtaus.com/forum/t-3528.html

私はあなたが使用しているツールに慣れていないので、それがこの場合に役立つかどうかはわかりませんが、それはぴったりのようでした。

于 2008-11-05T17:35:50.527 に答える
0

リファラーは、通常、クライアント (ブラウザー) によって要求と共にサーバーに送信される値です。要求されたリソースがリンクまたは送信された URL を示します。このエラーは、フォームメールのセキュリティ メカニズムの一部であり、スクリプトが Web サイト以外からの入力を処理するのを防ぐことを目的としています。

たとえば、フォームがhttp://www.foo.com/form.htmlにあり、スクリプトがhttp://www.foo.com/script.phpにあるとします。スクリプトがリファラーの値をチェックしない場合は、http://www.bar.com/myform.htmlで自分のサイトにフォームを作成し、それをスクリプトに送信できます。メールを送信するスクリプトは、スパムを送信するためにこの方法で悪用されることがよくあります。

問題を解決するには、スクリプトが入力を処理するリファラーを示すパラメーターをスクリプトの構成ファイルで見つけ、ドメインまたはページの特定の URL を含めるように変更します。

リファラーは通常、HTTP プロトコルのコンテキスト内で 'R' が 1 つしかない REFERER と綴りが間違っていることに注意してください。

于 2008-11-05T17:45:02.413 に答える