小编Jia*_*aro的帖子

通过在端口443上使用ssh来避免流量整形

我听说如果你使用端口443(通常用于https的端口)用于ssh,加密的数据包看起来与你的isp相同.

这可能是一种避免流量整形/限制的方法吗?

linux ssh https trafficshaping

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

网站是否应该在窗口调整大小?

我纯粹从可用性的角度来问这个问题:在调整浏览器窗口大小时,网站是否应该展开/拉伸以填充查看区域?

我肯定知道有明显的缺点:

  • 宽文本列很难阅读
  • 使用百分比编写html/css可能很痛苦
  • 如果图像太宽,或者添加的文本块太长,它会使您的设计超出其限制容易受到攻击.(看到编写html/css很痛苦)

我唯一可以想到的Pro是,使用内置于浏览器中的字体大小调整的用户不必处理只有几个字长的列,两边都有一个空白体.但是,我认为这可能是一个浏览器问题比什么都重要(Firefox 3允许你缩放所有内容,而不仅仅是文本,它总是派上用场)

编辑:我注意到堆栈溢出是固定宽度,但编码恐怖调整大小.似乎杰夫没有任何强烈的偏好.

html css usability

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

request.serverVariables()"URL"vs"Script_Name"

我正在维护一个经典的asp应用程序,在查看代码时,我遇到了两行类似的代码:

Request.ServerVariables("URL")
' Output: "/path/to/file.asp"

Request.ServerVariables("SCRIPT_NAME")
' Output: "/path/to/file.asp"
Run Code Online (Sandbox Code Playgroud)

我不明白......有什么区别?他们都忽略了我设置的URL重写,它将/ path文件夹作为根文档(上面的URL被重写为"/to/file.asp")

更多信息:该站点部署在IIS 7上

url request.servervariables asp-classic

5
推荐指数
2
解决办法
2万
查看次数

django-在urls.py中传递字符串或实例?

在url patters和函数实例中传递字符串有什么好处?似乎它可以被优化为在需要之前不实际加载函数,但事实上这是真的吗?

from django.conf.urls.defaults import *
from myapp.views import myView

urlpatterns = patterns('',
    # as a string
    url(r'^as-string/$', "myapp.views.myView"),

    # Uploading photos
    url(r'^as-instance/$', myView),

)
Run Code Online (Sandbox Code Playgroud)

编辑:如果它确实在它们需要之前不会导入,那么它将是内存的优化,但是在你真正尝试访问url之前不会引发不存在的函数和其他错误.

当然,如果您编写测试,这不是问题;)

django url optimization

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

使用Swift将新图像分配给UIImageView

我正在使用Xcode 6 Beta 4,我正在尝试检索远程图像并将其分配给UIImageView.我正在使用NSURLSession dataTask来使这个异步.这是我的代码:

func dataTask(imageUrl: String, targetImage:UIImageView) {

    let nsURL = NSURL(string: imageUrl)

    let task = NSURLSession.sharedSession().dataTaskWithURL(nsURL) {
        (data, response, error) in
        if !error {
            NSLog("No Error!")                
            var image:UIImage = UIImage(data: data)
            targetImage.image = image
        }
        else {
            NSLog("Error!")
        }
    }

    task.resume()
}
Run Code Online (Sandbox Code Playgroud)

这就是我打电话的方式:

        self.dataTask("http://bicicletaspony.com/img/spn/TeamA.png", targetImage: image)
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误:(

由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因是:'不得从后台线程执行对布局引擎的修改.

这是一个非常简单的图像分配.为什么会这样崩溃?!任何帮助都感激不尽!

uiimageview ios nsurlsession swift

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

使用Python进行分形图像缩放

我处于提供相对低分辨率图像的位置(通过API,不能获得更高分辨率的图像)并且需要生成高分辨率图像.

我已经看了PIL,它对于所有事情都很棒...除了放大图像.

它有常见的调整大小算法:

  • 最近的邻居
  • 双线性
  • 双立方
  • 抗锯齿

我想使用Fractal Resizing(根据jeff的编码恐怖帖子),但是,唉,PIL不支持这种调整大小.

进一步的Google搜索不会产生任何替代库来提供分形图像调整大小.

这样的事情是存在还是我真的不得不扣下并编写我自己的分形调整算法?

我不是专家,但从我目前的观点来看,这看起来像一个非常陡峭的学习曲线:(

如果没有这样的库,也许你有一些建议去哪里学习分形压缩算法?

python image-processing fractals python-imaging-library

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

使用Precommit Hook运行Django测试

我想使用mercurial的precommit钩子运行我所有的django测试.每当测试失败时,提交将被中止.

目标是尽可能频繁地阻止构建破坏的提交.

编辑:使用外部脚本路径结束.这是我的hgrc的相当部分:

[hooks]
precommit = python ./pinax/projects/lgr/manage.py test lgr_photos --verbosity=0 --noinput
commit = hg push
Run Code Online (Sandbox Code Playgroud)

这是我在钩子函数上的进展:

from os.path import join, dirname
import sys
from django.core.management import call_command

def hook(ui, repo, **kwargs):
    project_path = join( dirname(repo.path), 'pinax', 'projects')
    sys.path.insert(0, project_path)

    from lgr.manage import *

    output = call_command('test', verbosity=0, interactive=False)
    #ui.warn(output)
Run Code Online (Sandbox Code Playgroud)

我在这做错了什么?

PS - 它提供了一个巨大的错误追溯,它包含在下面的整个内容中

jim@ubuntu:~/workspace/lgr$ hg ci -m 'testing hooks'
No username found, using 'jim@ubuntu.ubuntu-domain' instead
error: precommit hook raised an exception: '_demandmod' object is not iterable
** unknown …
Run Code Online (Sandbox Code Playgroud)

python django version-control mercurial pre-commit

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

调用ctypes函数时,Python int溢出

我正在玩ctypes ...我有以下C代码

编辑:我试图弄清楚这一点的原因是为了使这篇博文更正确

sumrange.c

#include <stdio.h>

long sumrange(long);

long sumrange(long arg)
{
    long i, x;
    x = 0L;

    for (i = 0L; i < arg; i++) {
        x = x + i;
    }
    return x;
}
Run Code Online (Sandbox Code Playgroud)

我使用以下命令编译(在OSX上)

$ gcc -shared -Wl,-install_name,sumrange.so -o ./sumrange.so -fPIC ./sumrange.c
Run Code Online (Sandbox Code Playgroud)

我在python中实现了相同的功能:

pysumrange = lambda arg: sum(xrange(arg))
Run Code Online (Sandbox Code Playgroud)

然后我在交互式shell上运行:

>>> import ctypes
>>> sumrange = ctypes.CDLL('./sumrange.so')
>>> pysumrange = lambda arg: sum(xrange(arg))
>>> print sumrange.sumrange(10**8), pysumrange(10**8)
... 887459712 4999999950000000
Run Code Online (Sandbox Code Playgroud)

......而且数字不匹配.为什么会这样?

我尝试使用unsigned long long …

python ctypes ffi

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

Django的垃圾邮件打击计数器

我已经看过最受欢迎的Django热门计数器解决方案,它们似乎都没有解决垃圾邮件刷新按钮的问题.

我是否真的必须记录每个访问者的IP,以防止他们通过垃圾邮件刷新按钮(或编写一个快速而脏的脚本来为他们​​执行)来人为地提高页面查看次数?

更多信息

现在,您可以使用以下几行Python代码来扩充您的视图计数.哪个太少,你真的不需要编写脚本,你只需将它输入到交互式会话中:

from urllib import urlopen

num_of_times_to_hit_page = 100
url_of_the_page = "http://example.com"

for x in range(num_of_times_to_hit_page):
    urlopen(url_of_the_page)
Run Code Online (Sandbox Code Playgroud)

解决方案我可能会用

对我来说,当你需要在每个页面视图上对数据库进行一堆写操作时,这是一个相当粗糙的情况,但我想它无法帮助.由于一些用户人为地夸大了他们的观看次数,我将实施IP日志记录.并不是说他们是坏人,甚至是糟糕的用户.

看看有关缓存解决问题的答案......我将首先尝试这条路线.将更新结果.

值得一提的是,Stack Overflow似乎正在使用cookie(我无法增加自己的查看次数,但是当我在另一个浏览器中访问该站点时,它会增加.)

我认为这样做的好处太多了,这种"作弊"现在太容易了.

感谢大家的帮助!

django spam-prevention hit-count

3
推荐指数
2
解决办法
2200
查看次数

比较python中两个文件的md5哈希值

我想比较两个文件的哈希值。但是不管文件是否不同,即使哈希比较结果不同

这是代码:

import hashlib

hasher1 = hashlib.md5()
afile1 = open('canvas.png', 'rb')
buf1 = afile1.read()
a = hasher1.update(buf1)
print(str(hasher1.hexdigest()))

hasher2 = hashlib.md5()
afile2 = open('img5.png', 'rb')
buf2 = afile2.read()
b = hasher2.update(buf2)
print(str(hasher2.hexdigest()))

print(str(a) == str(b))
Run Code Online (Sandbox Code Playgroud)

输出:

614c9853a7f62c5b60d7d15bde80708f
76dc116b2c1b19b265db5e657846e649
True

Process finished with exit code 0
Run Code Online (Sandbox Code Playgroud)

python hash md5 hashlib python-3.x

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