我正在嘗試幫助維護舊網站。虛假請求服務器上的郵件頁面
我收到/ 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:[email protected]
[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:[email protected]?subject=Helpme&body=Dear%20etc
瀏覽器爲什麼試圖打開客戶端的電子郵件應用程序中打開服務器上的這些URI呢?
下面是一些例子HTML:
<a class="emailaddress" href="mailto:[email protected]?subject=Helpme&body=Dear etc">Helpme</a>
這裏是另一種變體:
<FORM ACTION="mailto:[email protected]" 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>
(就個人而言,我不會已經實現通過打開客戶端的電子郵件客戶端發送一個接觸的形式,和我也會建議替換這些表格)
不知何故,某些瀏覽器似乎將此解釋爲好像用戶想要打開頁面而不是打開客戶電子郵件應用程序。
什麼導致這些不正確的請求到服務器,我能做些什麼呢?
奇怪。我明白爲什麼會發生這種情況的唯一原因是mailto鏈接中的冒號在某些時候會被URL編碼。你展示的是最終的HTML嗎?沒有任何類型的後處理? – 2013-02-22 11:57:03