PHP的“安全”降价处理器?

是否有适用于公众意见的markdown的PHP实现? 基本上它应该只允许markdown语法的一个子集(粗体,斜体,链接,块引用,代码块和列表),并且去掉所有内联HTML(或者可能转义它)? 我想一个select是使用正常的降价parsing器,并通过HTML sanitiser运行输出,但有没有更好的办法做到这一点..? 我们在网站的其他部分使用PHP markdown Extra,所以我们必须使用辅助parsing器(非“额外”版本,因为像脚注支持是不必要的)。它也似乎更好的parsing*bold*文本并将所有内容都转义为&lt;a href="etc"&gt; ,而不是生成<b>bold</b>文本,并试图剥离我们不想要的位。 另外,在一个相关的说明中,我们使用WMD控制的“主”网站,但对于评论,还有什么其他的select? 大规模杀伤性武器的JavaScript预览是好的,但它需要与PHP降价处理器相同的“绝望”(它不能显示图像等,否则有人会提交,他们的工作降价会“打破”) 目前我的计划是使用PHP-markdown – > HTML santiser方法,并编辑WMD以从showdown.js删除图像/标题语法 – 但似乎这已经做了无数次。 基本上: PHP中是否存在“安全”markdown实现? 有一个HTML / JavaScript的降价编辑器,可以轻松禁用相同的选项? 更新:我最后只是通过HTML Purifier运行markdown()输出。 这样,Markdown渲染与输出消毒是分开的,它更加简单(两个大部分是未经修改的代码库)更安全(你不是一次尝试渲染和消毒),而且更灵活(可以有多个消毒级别,可信内容configuration比较宽松,公众意见要严格得多)

信用卡到期date在哪个时区?

我们知道从信用卡到期date – 包容性或独家? 该信用卡在最后一天过期。 但是,在哪个时区呢?

CSRF令牌生成

这是关于生成CSRF令牌的问题。 通常我想根据与用户会话相关的独特数据生成令牌,并使用密钥进行哈希和腌制。 我的问题是在没有唯一的用户数据使用时生成令牌。 没有会议可用,cookies不是一个选项,IP地址和这种性质的东西是不可靠的。 是否有任何理由不能将string作为请求的一部分join? 示例伪代码来生成令牌并embedded它: var $stringToHash = random() var $csrfToken = hash($stringToHash + $mySecretKey) <a href="http://foo.com?csrfToken={$csrfToken}&key={$stringToHash}">click me</a> CSRF令牌的示例服务器端validation var $stringToHash = request.get('key') var $isValidToken = hash($stringToHash + $mySecrtKey) == request.get('csrfToken') 在散列中使用的string将在每个请求上不同。 只要包含在每个请求中,就可以继续进行CSRF令牌validation。 由于每个请求都是新的,只有embedded到页面中,所以不能访问令牌。 令牌的安全性然后下降到我知道的$ mySecretKey。 这是一个天真的方法? 我错过了一些原因,为什么这不能工作? 谢谢

为什么mod_wsgi无法写入数据? IOError:写入数据失败

什么可能导致这个错误: $ sudo tail -n 100 /var/log/apache2/error.log' [Wed Dec 29 15:20:03 2010] [error] [client 220.181.108.181] mod_wsgi (pid=20343): Exception occurred processing WSGI script '/home/username/public_html/idm.wsgi'. [Wed Dec 29 15:20:03 2010] [error] [client 220.181.108.181] IOError: failed to write data 这是WSGI脚本: $ cat public_html/idm.wsgi import os import sys sys.path.append('/home/username/public_html/IDM_app/') os.environ['DJANGO_SETTINGS_MODULE'] = 'settings' import django.core.handlers.wsgi application = django.core.handlers.wsgi.WSGIHandler() 为什么Django不能写数据? 我正在运行Django […]

如何检查Chromedebugging器中的JavaScript函数返回值?

来自gdb,它将完成时打印一个函数的返回值。 有没有一种方法可以从Chromedebugging器获取这些信息,而无需更改正在debugging的源代码?

PHP:自引用数组

有没有从数组内引用数组键的方法? 在代码格式中这可能更有意义: $array=array( "Key1"=>array( "Value1", "Value2" ), "Key2"=>&$this['Key1'] ); 我想要的是$array['Key2']输出相同的$array['Key1'] 。 我可以添加$array['Key2']=&$array['Key1']; 在创build数组之后,如果可能的话,希望将其全部保存在一个代码块中。 我已经检查了参考文档,以及一些build议类似的问题在这里,并寻找“PHP数组参考”。

什么是分布式caching?

我对分布式caching的概念感到困惑。 我有点知道谷歌search是什么。 分布式caching可能跨越多个服务器,因此它可以在规模和事务处理能力上增长。 但是,我不太了解它是如何工作的,或者它如何分配数据。 例如,假设我们有数据1,2,3,4,5,6,7,8,9,10和2caching服务器A和B. 如果我们使用分布式caching,则可能的解决scheme之一是数据1,3,5,7,9存储在caching服务器A中,并且2,4,6,8,10存储在caching服务器B中。 那么这是正确的还是我误解了? 第二个问题是我通常听到服务器节点这个词。 它是什么? 在上面的例子中,服务器A是一个服务器节点,对吗? 第三个问题,如果服务器(假设服务器A)出现故障,我们可以做些什么? 我的意思是,如果我上面的例子是正确的,我们不能从caching中获取数据1,3,5,7,9,当服务器A停机时,那么Cache Server在这种情况下可以做什么?

在执行select和count查询的时候,有没有比Hibernate更高效的分页方式?

通常分页查询看起来像这样。 有没有更好的方法,而不是使两个几乎相等的方法,其中之一执行“select* …”,另一个“计数* …”? public List<Cat> findCats(String name, int offset, int limit) { Query q = session.createQuery("from Cat where name=:name"); q.setString("name", name); if (offset > 0) { q.setFirstResult(offset); } if (limit > 0) { q.setMaxResults(limit); } return q.list(); } public Long countCats(String name) { Query q = session.createQuery("select count(*) from Cat where name=:name"); q.setString("name", name); […]

如何以编程方式从亚马逊的网站上find价格?

所以亚马逊有很多不同的API用于不同的事情,很难find我正在寻找的。 我有一个客户,销售东西,并检查亚马逊的最低价格,知道在哪里定价的东西(略低于那里最低的东西)。 他们希望将function集成到他们的库存系统中,以便自动在亚马逊上find产品的最低价格并显示出来。 我想知道哪个AWS服务最适合这个任务。 我看到了产品广告API,看起来就像现在最接近的东西。 是这样吗? 当亚马逊在某处提供这个信息的编程接口的时候,我并不是真的想依靠一个刮板,我知道他们这样做,因为许多其他产品都有这个。 有人说,他们可以下载一个亚马逊的产品转储,并在本地使用 – 如果有人能指出我的方向,我也愿意接受。

你可以做30行Go? 你可以创build一个有用的,完整的程序来演示它的function吗?

所以,最近几天的热门话题是Go ,来自Google的新语言。 假设你像我一样都是痴迷于编程语言的爱好者,那么你已经下载了它,创build了它并运行你的“Hello,世界”程序(使用UTF-8发明者编写的语言是不是很好? 。 你们都读过教程 , Effective Go和其他一些文档。 现在,你打算怎么做? 我希望看到一些展示Gofunction的演示。 你可以在一个简短的程序中做什么? 展示你最好的例子代码。 尽pipe在一个需求不断变化的项目过程中,你们已经和许多程序员团队一起编写并维护了一个庞大的代码库,但真正衡量一门语言是不可能实现的,只要有限的数量代码确实有助于展示语言的expression力量。 我希望看到能够真正实现Go的独特新function的简短,完整的程序; 不只是片段或“你好,世界”。 所以,发布一些你用Go写的很酷的代码。 利用其独特的function,比如它的goroutines和并发通道,或者基于接口的types系统。 你可以写一个原始的聊天服务器,或凉爽的IRC机器人? 实现可扩展到多个内核的并行Mandelbrot集合? 写一些小语言的翻译? 你能用三十行完成吗? 我select了30个,就像你可以放入堆栈溢出代码块一样,没有溢出,并得到一个滚动条; 应该足够做一些有趣的事情,而不要打高尔夫球,但要足够短,让每个人的注意力快速演示。 例如,只需要重新格式化一下,示例Web服务器应该能够适应(不包括数据)。 向我们展示您的Go代码!