正确的做法是坚决不要相信用户的任何输入,并过滤掉输入中的所有特殊字符 。这样就能消灭绝大部分的 XSS 攻击:
<?php$searchQuery = htmlentities($searchQuery, ENT_QUOTES);或者你可以使用模板引擎 Twig,一般的模板引擎都会默认为输出加上 htmlentities 防范 。
如果你保持了用户的输入内容,在输出时也要特别注意,在以下的例子中,我们允许用户填写自己的博客链接:
<body><a href=https://www.isolves.com/it/cxkf/yy/php/2019-12-31/"">Visit Users homepage
