禁止链接到txternal图像

时间:2013-01-12 20:23:14

标签: .htaccess hotlinking

有没有办法在我的论坛中禁止外部图片?外部图像的链接有时被打破,并不总是合法的。 是否可以通过.htaccess进行此操作?

1 个答案:

答案 0 :(得分:1)

没有。 < a href='' >< img src='' >要求客户端加载定义的uri。没有安全的方法来禁止这种情况(可以禁用javascript解决方案),因为uri是由浏览器而不是服务器加载的。

论坛中用户生成的代码始终是安全威胁,应该过滤掉。根据您的代码,恶意网站可能包含使用您各自页面的权限读取客户端会话cookie的代码。

如果你使用php,你可能想使用$str = strip_tags($str)函数。请注意,可能无法正确检测到嵌套标记。

安全威胁也可能基于CDATAhtml-comments。如果你在< input >标签中使用高位或双引号,那么用空字符串替换它们也很有用。

如果您使用utf-8,您可以这样做:

mb_regex_encoding('UTF-8');
$str = mb_eregi_replace( '\'' , '' , $str);
$str = mb_eregi_replace( '<([A-Z][A-Z0-9]*)\b[^>]*>' , '' , $str);
$str = mb_eregi_replace( '<\/([A-Z][A-Z0-9]*)\b[^>]*>' , '' , $str);
$str = mb_eregi_replace( '<!--' , '' , $str);
$str = mb_eregi_replace( '-->' , '' , $str);
$str = mb_eregi_replace( '<!\[CDATA\[' , '' , $str);
$str = mb_eregi_replace( '\]\]>' , '' , $str);