我正在建筑物入口处为自助服务终端创建一个网页,因此一个页面上将有4个按钮,每个部门的名称都在上面。每次单击按钮时,都会将电子邮件发送到相应的部门电子邮件地址,以通知访问者在此处。
我发布了另一个相关的问题,有人说会有一个安全漏洞,因为部门会得到很多垃圾邮件,因为这将被托管在我公司的子域上。克服它的最佳方法是什么?我可以使用一些PHP代码来修复垃圾邮件问题吗?
任何代码或有用的链接都将受到赞赏。
这是我目前正在使用的代码,如果您有更好的建议,我可以完全改变它。感谢。
<form action="" method="post">
<input type="submit" value="Send details to A" />
<input type="hidden" name="button_a" value="1" />
</form>
<?php
if(isset($_POST['button_a']))
{
$to = 'name@ourcompany.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@ourcompany.com' . "\r\n" .
'Reply-To: webmaster@ourcompany.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
echo 'Email Sent.';
}
?>
答案 0 :(得分:4)
您可以做的第一件事就是找出Kiosk的IP地址,并且只允许这样做。
if ($_SERVER['REMOTE_ADDR'] != $ip_of_kiosk) exit;
答案 1 :(得分:2)
这是非常正确的,任何机器人(特别是谷歌)可以读取的纯文本电子邮件地址将很快被垃圾邮件发送者接收。
一些方法:以某种方式处理垃圾邮件。当然不是首选的选项,有很多缺点,很少有专业人士。更不用说业务的潜在成本了。
第二种方法,将电子邮件地址嵌入图像中。这就是Facebook通常在原生FB gui中显示电子邮件地址的方式。
第三种方法是对代码中的电子邮件地址进行模糊处理,并且只允许您的脚本在发送电子邮件时访问salt进行解密。
最后但并非最不重要的是,此评论适用于以上所有内容:请确保您的robots
文件明确停止标准SE机器人进一步挖掘您的应用程序,而不是进一步降低地址被病毒式传输的风险进入公共领域。