Drupal 防止Filterxs剥离facebook名称空间标记
我的一个模块使用Drupal 防止Filterxs剥离facebook名称空间标记,drupal,drupal-6,Drupal,Drupal 6,我的一个模块使用filterxss来去除标签,我已经将“fb:profile pic”设置为允许的标签。但是,filterxss不允许任何带有名称空间(以及冒号)的标记 这有什么办法吗?或者这是filter_xss中的一个错误,没有正确识别冒号作为标记名的一部分?所以这不是一个完美的“答案”,但我通过(喘息!)修补核心解决了这个问题。在模块/filter/filter.module的第1059行: if (!preg_match('%^(?:<\s*(/\s*)?([a-zA-Z0-9:-
filterxss
来去除标签,我已经将“fb:profile pic”设置为允许的标签。但是,filterxss不允许任何带有名称空间(以及冒号)的标记
这有什么办法吗?或者这是filter_xss中的一个错误,没有正确识别冒号作为标记名的一部分?所以这不是一个完美的“答案”,但我通过(喘息!)修补核心解决了这个问题。在模块/filter/filter.module的第1059行:
if (!preg_match('%^(?:<\s*(/\s*)?([a-zA-Z0-9:-]+)([^>]*)>?|(<!--.*?-->))$%', $string, $matches)) {
^^
Added colon and hypen here.
if(!preg_match('%^(?::]*)>?|())$%',$string,$matches)){
^^
在这里添加了冒号和催眠。
我在标签中添加了冒号和hypens作为允许的字符,以及“a-zA-Z0-9”。现在只需记住在所有核心更新之后应用此修补程序。所以这不是一个完美的“答案”,但我通过(喘息!)修补核心解决了问题。在modules/filter/filter.module中,第1059行:
if (!preg_match('%^(?:<\s*(/\s*)?([a-zA-Z0-9:-]+)([^>]*)>?|(<!--.*?-->))$%', $string, $matches)) {
^^
Added colon and hypen here.
if(!preg_match('%^(?::]*)>?|())$%',$string,$matches)){
^^
在这里添加了冒号和催眠。
我在标签中添加了冒号和hypens作为允许的字符,以及“a-zA-Z0-9”。现在只需记住在所有核心更新之后应用此修补程序。我担心,2011年11月报道。看起来它目前尚未分配,因此没有关于何时/是否修复的提示:(刚刚注意到你可能已经对这篇文章发表了评论,如果你看一下,你会发现它们是相同的,所以问题仍然存在于Drupal 6Tanks Clive中。我现在必须进行黑客破解。恐怕,2011年11月报道。看起来它目前尚未分配,因此没有关于何时/是否修复的提示:(刚刚注意到你可能已经对这篇文章发表了评论,如果你看的话,你会发现它们是相同的,所以这个问题在Drupal 6Tanks Clive中仍然存在。我现在必须进行黑客破解。