私は古いウェブサイトの維持を手伝おうとしています。
代わりに、クライアント側のメール アプリケーションを開いたはずの /mailto URI アドレスに対する誤った要求を受け取ります。以下は、今日のリクエストのうち 3 つに関する PHP データです。
[HTTP_USER_AGENT] => Opera/9.80 (Windows NT 6.1; WOW64) Presto/2.12.388 Version/12.10
[REQUEST_URI] => /mailto:info%40somedomain.com
[HTTP_USER_AGENT] => Opera/9.80 (Windows NT 6.1; WOW64) Presto/2.12.388 Version/12.10
[REQUEST_URI] => /mailto:info@somedomain.com
[HTTP_USER_AGENT] => Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.21) Gecko/20100312 Firefox/3.6
[REQUEST_URI] => /mailto:info@somedomain.com?subject=Helpme&body=Dear%20etc
ブラウザーが、クライアント側の電子メール アプリケーションを開く代わりに、サーバー上のこれらの URI を開こうとするのはなぜですか?
html の例を次に示します。
<a class="emailaddress" href="mailto:info@somedomain.com?subject=Helpme&body=Dear etc">Helpme</a>
ここに別の変種があります:
<FORM ACTION="mailto:info@somedomain.com" METHOD="POST" ENCTYPE="text/plain">
<table>
<TR>
<TD width="100">Name: </TD>
<TD>
<INPUT TYPE="text" NAME="name" SIZE="35">
</TD>
</TR>
<TR>
<TD>Your Message</TD>
<TD>
<TEXTAREA NAME="text" COLS="35" ROWS="4"></TEXTAREA>
</TD>
</TR>
</table>
<input type="hidden" name="id" value="7180">
<INPUT TYPE="submit" VALUE="Send">
<INPUT TYPE="reset" VALUE="Reset">
</FORM>
(個人的には、クライアント側の電子メール クライアントを開いて連絡先フォームの送信を実装することはありませんでした。また、フォームでテーブルを使用することもありませんでした。それらを置き換えることをお勧めします。)
どういうわけか、一部のブラウザーは、ユーザーがクライアントの電子メール アプリケーションを開く代わりにページを開こうとしているかのように解釈するようです。
サーバーへのこれらの不正なリクエストの原因と、それらに対して何ができるでしょうか?