小编Ke.*_*Ke.的帖子

WMD编辑器消毒

我正试图找到消毒WMD编辑器输入的方法.

具体来说,我试图使HTML标签仅在<code>WMD生成的标签中可用.那可能吗

我的问题是,以下代码呈现为HTML,可以抵御潜在的XSS攻击.

例如, <a onmouseover="alert(1)" href="#">read this!</a>

上述代码通常在预览模式下和保存到数据库时呈现.

我注意到Stack Overflow似乎没有这个问题.相同的代码只是呈现为文本.

我注意到Stack Overflow团队已经在http://refactormycode.com/codes/333-sanitize-html中共享了他们的代码.我是否真的必须使用C#来消毒WMD才能做到这一点?

editor wmd

5
推荐指数
1
解决办法
270
查看次数

solr facets vs mysql关系模式

我有兴趣了解在solr/mysql/app设置中查询solr的最佳/最快(最有效)的方法是什么.我有一个mysql数据库,在关系模式中有一个大的主表和几个较小的表.我还在构建一个使用层次结构的应用程序,并根据相关表中的数据构建菜单.

我开始只在mysql中执行此操作,但很快发现(使用gigs of data),当使用与主表等的连接时(即使使用mysql索引),mysql在计算此相关数据的计数时会非常慢.目前我采用的方法是使用solr索引我的主表,并将较小的相关表保存在mysql中.对于每个菜单项,我将在运行时查询solr的计数,感觉它会很慢.

更快/更好:

1.)将相关表保存在mysql中,同时为相关表中的每一行设置构面.当我查询维护时,以某种方式将它们链接在一起?这听起来像是最快的选择,但在我的应用程序中可能很棘手(必须匹配2个不同的数组).

2)将相关表保存在mysql中,并在运行时为每个相关项调用/计数主索引表中的数据.例如,对于品牌菜单,我需要计算每个品牌的数量,要求我将每个菜单项作为查询发送给solr(以获取计数).我意识到每个查询都很快,但可能有几百或几千个品牌.

3)只需将所有数据放入solr并使用facet? - 但是如何识别每个方面并确定每个方面的mysql表格中的相关信息?相关mysql表中的每个条目都有标题,描述,格式化url,元数据,相关信息是否也应存储在solr中?在不同的指数?在这种情况下,我应该完全摆脱mysql?

关于最佳(练习)选项的任何想法都将受到高度赞赏,或者我没有想到的任何建议都会很棒.

干杯柯

mysql solr

4
推荐指数
1
解决办法
2176
查看次数

在Mysql关系数据库上使用SOLR.仅将SOLR用于产品表

关于SOLR使用何时结束以及开始的地方,我有点困惑.

我使用带有关系mysql数据库的php作为购物网站,其中所有表都与产品表相关联,因为它们在查询时加入了表.不用说它太慢了!

例如

  • 分类表 - catid,catname,catdesc
  • 品牌表 - brandid,brandname,branddesc
  • 产品表 - productid,productname,productdesc,catid,brandid
  • (我也使用价格范围等范围)

我想知道是否应该使用SOLR来索引整个关系模式,或者仅仅是为了单独索引产品表并让我的应用程序像现在一样工作.

如果我只是将产品表切换到使用SOLR,有什么警告吗?

例如在mysql中我可以在加入品牌表时进行全文搜索.这将允许品牌也被搜索.是否可以通过将产品表切换到SOLR来实现相同的目标?是否还有其他需要注意的警告.

我还想为"搜索"创建一个新表.这将允许我以下列方式在mysql表中使用关键字:

搜索表 - searchterm(例如口红),同义词(例如口红,嘴唇等)

即.这将允许我同时搜索多个术语 - 使用SOLR方面的好时机可能不是在mysql中存储搜索?或者我应该只使用mysql存储搜索并从SOLR中提取产品?

任何帮助都很高兴

solr

2
推荐指数
1
解决办法
3645
查看次数

使用JavaScript获取并设置剪贴板

我已经看到一些线程解释说可以使用Flash在Mozilla和Internet Explorer中设置剪贴板数据,这很容易,等等.

例如Greasemonkey\JavaScript Copy to Clipboard按钮

但是,我想在设置之前阅读剪贴板并删除某些项目.有没有办法做到这一点?

那么..是否有可能检测是否发生了复制和粘贴?然后将它们重定向到另一个URL?

javascript clipboard

2
推荐指数
1
解决办法
3898
查看次数

SWF对象 - 我为什么要使用它

我的所有网站都需要对搜索引擎友好 - 即搜索引擎可读.但是,我有点像flash,并希望以友好的方式集成它.

我可以选择swfobject,它允许正确的页面名称,并为用户和搜索引擎提供不同的页面.

但是,我想知道为什么需要使用swfobject.例如,我可以使用普通的php cms页面并将flash元素插入其中.当搜索引擎调用该页面时,只需提供纯HTML,而用户将获得闪存.

我真的很感激能够找到关于这个主题的其他观点以及不同方法的好处.

非常感谢

ķ

flash seo swfobject

2
推荐指数
1
解决办法
1489
查看次数

如何导入 .pyc 编译的 python 文件并使用它

我试图弄清楚如何.pyc在 python 脚本中包含一个文件。

例如我的脚本被称为:

myscript.py
Run Code Online (Sandbox Code Playgroud)

我想包含的脚本被称为:

included_script.pyc
Run Code Online (Sandbox Code Playgroud)

那么,我是否只使用:

import included_script
Run Code Online (Sandbox Code Playgroud)

那会自动执行included_script.pyc吗?或者我还需要做些什么才能让我included_script.pycmyscript.py.

我还需要传递使用的变量included_script.pyc吗?如果是这样,如何实现?

python import file include

2
推荐指数
1
解决办法
8511
查看次数

python-如何膨胀gzip压缩的base64d字符串

我只是想知道如何对文本字符串进行充气/解压缩,该文本字符串也是具有base64编码的压缩压缩字符串?

例如,所有的python示例似乎都专注于打开文件,而我想处理压缩后的字符串。

python base64 gzip

2
推荐指数
1
解决办法
4968
查看次数

Jetty中的多个solr实例或运行多个Jetty服务器,这是不太密集的?

我即将开始使用一个新的linode VPS服务器.我目前使用Tomcat和Jetty(在我的开发服务器上)为不同的Solr提供服务,但是我已经读了一下我意识到Tomcat可能是一个非常资源的人,因此建议我用Jetty.我已经在Jetty1/webapps/ROOT /中设置了一个带有应用程序的Jetty开发服务器

这是我的问题:

1)在同一个Jetty服务器中运行2个solr实例是否更好

要么

2)我应该运行两个不同的Jetty服务器(端口8080,8081都可以使用,因为它们仅用于Web服务)

以上哪项资源密集程度较低?

老实说,我的偏好是2),运行2个不同的jetty服务器,因为要让一个Jetty服务器运行多个solr实例需要做很多工作,因为我已经在Jetty1/solr中运行了一个应用程序/ home并且必须重新设置它,包括适应多个实例.这方面的教程也没有多少.

另外,我在Tomcat中设置了另一个Solr实例.我可以将索引复制并粘贴到Jetty2/solr中,索引是否正常工作,还是需要在Jetty中重新索引它们?

干杯

solr jetty

1
推荐指数
1
解决办法
5346
查看次数

在javascript中反向按位移位

我想知道如何反向进行下面的位移过程?

chr1 = (enc1 | ((enc2 & 3) << 6));
chr2 = (enc2 >> 2) | ((enc3 & 0x0F) << 4);
chr3 = (enc3 >> 4) | (enc4 << 2);
Run Code Online (Sandbox Code Playgroud)

这基本上是用于解码脚本Im的位移位.我想知道有没有办法扭转这个过程,编码而不是解码?

这来自以下在base64中解码的脚本:

Base64 = {
        _keyStr: ".ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+=",
        decode: function( input ) {
                    var output = "";
                    var hex = "";
                    var chr1, chr2, chr3 = "";
                    var enc1, enc2, enc3, enc4 = "";
                    var i = 0;
                    var base64test = /[^A-Za-z0-9\+\.\=]/g;

                    do {
                        enc1 = this._keyStr.indexOf(input.charAt(i++)) ;
                        enc2 = this._keyStr.indexOf(input.charAt(i++)) …
Run Code Online (Sandbox Code Playgroud)

javascript encoding bit-shift decoding bitwise-operators

1
推荐指数
1
解决办法
156
查看次数

如何打开文件并更改一行

我已经看了很多线程,但是找不到正确的答案:

我对python有点新鲜.我在python中打开一个文件,在开始行之前插入一行,在最后一行之前插入一行,然后在结尾处将所有行重建为字符串变量.

继承人我试图在打开的文件上运行的功能.这会将mode ="0"的所有行更改为mode ="1",反之亦然.

def Modes(file, mode):
    endstring = ''
    if(mode == 1):
        mode0 = 'mode="0"'
        mode1 = 'mode="1"'
    else:
        mode0 = 'mode="1"'
        mode1 = 'mode="0"'   
    for line in iter(file):
        if 'Modes' in line:
            line = line.replace(mode0,mode1)
        endstring += line
    return endstring
Run Code Online (Sandbox Code Playgroud)

所以我尝试以下方法:

  mode = 1
  input_file = open("c:\myfile.txt")
  input_file.readlines()
  lengthlines = len(input_file)
  #insert line at position 1
  input_file.insert(1,'<VARIABLE name="init1" />')
  #insert line at last line position - 1
  input_file.insert(lengthlines,'<VARIABLE name="init2" />')
  #join the lines back up again
  input_file …
Run Code Online (Sandbox Code Playgroud)

python readlines

0
推荐指数
1
解决办法
99
查看次数