1

我正在尝试帮助维护旧网站。

我收到了对 /mailto URI 地址的虚假请求,这些地址本应打开客户端邮件应用程序。以下是关于今天的三个请求的一些 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>

(就个人而言,我不会通过打开客户端电子邮件客户端来实现发送联系表格,也不会在表格中使用表格。我会建议替换那些。)

不知何故,一些浏览器似乎将此解释为用户想要打开页面而不是打开客户端电子邮件应用程序。

是什么导致了这些对服务器的错误请求,我该怎么办?

4

2 回答 2

1

事实证明,这些解释是由一些有故障的垃圾邮件机器人完成的,他们试图提交指向其网站的链接和其他通用垃圾邮件。到目前为止,还没有真正的用户尝试以这种方式提交表单。

于 2013-03-08T13:53:40.190 回答
0

据此,不应使用 mailto 操作,因为它取决于客户端上的软件我的猜测是有人发布了您的表单,但他们的浏览器不理解表单操作,并尝试将其解析为 html。

于 2013-02-22T12:04:17.390 回答