3

我正在管理一个博客,其中少数人可以提交自己的文章和条目。我希望他们能够通过 HTML 嵌入视频(以及他们选择的粗体、斜体等文本)。如何在维护站点安全的同时做到这一点?

如果我不对实际的文章空间进行 HTML 转义,那么公开的评论就会毁掉我的网站。有没有办法选择性地转义某些字符组合?

编辑; 希望不用编写我自己的解析器。我只想要简单的东西,比如<b><i>等标签未转义,以及视频和链接嵌入。

4

3 回答 3

3

我使用 SO 使用的东西。它是开源的,并具有多种语言的解析器。

名字是WMD和问题“WMD 编辑器开源项目在哪里?” 有一些质量保证材料概述了这个编辑器。

问题“running showdown.js serverside to conver Markdown to HTML (in PHP)”有一些 QA 材料概述了 PHP 中的一些 Markdown 库。

于 2013-01-13T14:18:52.950 回答
0

大多数网站(例如 SO)使用的最简单的方法是引入您自己的特殊标记,然后将其转换为您想要的功能。

例如,SO 使用星号 ( *) 斜体和 ( **) 粗体(编辑:在 HTML 标记本身旁边<b></b>,请参阅此答案的来源)。

其他网站使用[b][i]标记。您可以有一个[video=http://myvideo.com]标签,然后您的 PHP 会将其转换为适当的 HTML 实体。

于 2013-01-13T14:17:29.533 回答
0

您可以安全地 HTML 转义所有内容。您的视频的 URL 不会受到您想要进行的任何转义的影响。

于 2013-01-13T14:17:38.243 回答