访问不存在的页面时跳转到指定页面的nginx配置

当用户访问一个不存在的页面时,让其跳转到指定页面。

利用404页面设置实现

产品提到这个需求,第一个想到的是nginx的404页面设置。

error_page 404  /404.html # 这里改成指定页面地址

验证效果:

访问http://xxx.com/a(不存在的地址),直接返回了指定页面的内容。
但是地址没有变化,不满足需求。

利用rewrite跳转实现

if (!-e $request_filename) {
    rewrite ^/(.*)$ /mobile_solution.html last;
}

验证效果:

访问http://xxx.com/a(不存在的地址),直接返回了指定页面的内容。
跟上面的方法类似,不满足需求。

问了下运维同事,说这里要用redirect。

if (!-e $request_filename) {
    rewrite ^/(.*)$ /mobile_solution.html redirect;
}

再次验证,搞定。

ubuntu下如何把语言环境变量改为中文

查看当前系统的语言环境

ubuntu@VM-14-193-ubuntu:~$ locale
LANG=en_US.UTF-8
LANGUAGE=en_US:
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
ubuntu@VM-14-193-ubuntu:~$

编辑配置文件

ubuntu@VM-14-193-ubuntu:~$ vim ~/.profile
# 添加下面内容
export LANG="zh_CN.UTF-8"
export LC_ALL="zh_CN.UTF-8"

- 阅读剩余部分 -

使用python多线程threadpool遇到"'NoneType' object has no attribute 'Empty'"的问题

代码如下:

#!/usr/bin/env python
# coding=utf8


import threadpool as tp

args = []
for i in range(1, 20):
    args.append(i)


def start(args):
    print '[+] %s' % args
    return True

pool = tp.ThreadPool(20)
reqs = tp.makeRequests(start, args)
[pool.putRequest(req) for req in reqs]
pool.wait()

执行后报错信息如下:

Exception in thread Thread-8 (most likely raised during interpreter shutdown):Exception in thread Thread-7 (most likely raised during interpreter shutdown):

省略部分信息

<type 'exceptions.AttributeError'>: 'NoneType' object has no attribute 'Empty'

- 阅读剩余部分 -

ESET盒装版激活码如何使用

家里电脑上的eset马上就要过期了,在易迅上买了个盒装版。(比官方的便宜一半呢!!)

盒装版的激活码是类似xxxx-xxxx-xxxx-xxxx-xxxx这样的。

访问eset产品注册,填写表格里的信息。

注册信息

邮箱是用来接收用户名/密码的,一定要写对。

注册完成后,使用用户名/密码方式进行激活即可。

可恶的BOM头!!!

原因

同事反馈一个接口返回的json数据,在python里load不出来。

Traceback (most recent call last):
  File "<pyshell#22>", line 1, in <module>
    r.json()
  File "C:\Python27\lib\site-packages\requests\models.py", line 797, in json
    return json.loads(self.text, **kwargs)
  File "C:\Python27\lib\json\__init__.py", line 338, in loads
    return _default_decoder.decode(s)
  File "C:\Python27\lib\json\decoder.py", line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Python27\lib\json\decoder.py", line 384, in raw_decode
    raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded

查了下说是前面多了个BOM头。

- 阅读剩余部分 -