Django自定义404,500页面

1.创建一个项目

django-admin.py startproject HelloWorld

2.进入HelloWorld项目,在manage.py的同一级目录,创建templates目录,并在templates目录下新建404.html,500.html两个文件。

3.修改settings.py
(1.)DEBUG修改为False,(2.)ALLOWED_HOSTS添加指定域名或者IP,(3.)指定模板路径‘DIRS’: [os.path.join(BASE_DIR, ‘templates’)],

# SECURITY WARNING: don't run with d[......]

Read more

nginx服务器配置解决API的跨域问题

在采用jquery ajax调用http请求时,发现了一系列问题:
如采用firebug调试API请求(这个API是自己服务器的应用),看到服务器明明返回200状态,response返回数据也是json格式,但ajax返回的error。
在排除json数据格式不正确的原因之后,发现了ajax error函数返回“networkerror failed to execute ‘send’ on ‘xmlhttprequest’ failed to load ‘http //“ XMLHttpRequest.status=0,就是没有初始化。
后来才知道是跨域问题(CORS),因为程序调用的[......]

Read more

CentOS 7 安装ftp服务器

走过很多弯路,就简单点总结。

1.安装ftp,相信这步很简单

# yum -y install ftp vsftpd

查看安装情况

#rpm -qc vsftpd /etc/logrotate.d/vsftpd /etc/pam.d/vsftpd /etc/vsftpd/ftpusers /etc/vsftpd/user_list /etc/vsftpd/vsftpd.conf

2.服务器配置

创建ftp根目录 /ftp/private(这里有个不解的问题,如果创建了一个/root/ftp/private的目录,登录时会提示500 OOPS: cann[......]

Read more

nginx每天定时分割日志

环境说明:
操作系统CentOS7.0,默认在线安装nginx。
nginx配置文件路径:/etc/nginx/nignx.conf,
nginx日志文件路径:/var/log/nginx/access.log
nignx.pid路径:/run/nginx.pid
新建的定时脚本位置/shell/nginx/logs.sh

1.新建脚本并执行

#mkdir /shell/nignx

#cd /shell/nginx

#vim logs.sh
#!/bin/bash

base_path='/var/log/nginx'

log_path=$[......]

Read more

Linux 设置Redis开机启动

CentOS7.0

假设Redis已经安装,版本3.2.4

#cd redis-3.2.4

#mkdir /etc/redis

#cp redis.conf /etc/redis/6379.conf

#cp utils/redis_init_script /etc/init.d/redis

#chmod a+x /etc/init.d/redis

#cp src/redis-server /usr/local/bin/

#cp src/redis-cli /usr/local/bin/

#vim /etc/init.d/redis
在脚本[......]

Read more

chmod: Unable to change file mode on swoole.so: Operation not permitted

情景是:安装swoole,发现无法写入目录权限 ,于是执行sudo chmod -R 777 extension发现以下错误(系统是OS X El Capitan 10.11)。

chmod: Unable to change file mode on extensions: Operation not permitted

各种尝试均无法解决。后来发现 OSX的System Integrity Protection(系统集成保护),就是系统的文件即使有了root权限依然无法使用(rootless)。

解决办法就是将Mac关机,然后重新启动,按下Power键之后长按Comman[......]

Read more

Mac 安装scikit-learn

尽管在http://scikit-learn.org/stable/install.html的官网上已经提供了相关的安装教程,但安装起来还是遇到不少困难,记录一下。

官方文档要求

Scikit-learn requires:
	Python (>= 2.6 or >= 3.3),
	NumPy (>= 1.6.1),
	SciPy (>= 0.9).

说一下我的环境

OSX 10.8.5
Python2.7

系统默认安装了多个版本的Python,可以通过

port select --list python

查看结果

Availab[......]

Read more

利用google app engine开发一个定时器应用

最近对Google App Engine感兴趣。GAE是免费的(当然也有升级收费的),默认可以建立10个免费的web应用(不过我的账号可以建立25个免费应用^__^),至于配置,如果只是做简单的应用足够应付了,例如做一个定时抓取数据的应用,又或者用goagent搭建梯子。虽然GAE这么好的产品无法在国内(appspot.com在国内是无法访问的),但利用免费的资源做一些简单的事情还是很有意义的,对于如定时抓取数据,针对海外用户数据分析等等就非常有用了。

今天就写一篇关于google app engine定时器的文章。做这个定时器的前提是,假设你已经搭建好了google app engin[......]

Read more

Apache2 Nginx配置多域名

继续上一篇关于安装LNMP的问题总结。写一下关于Apache2 Nginx配置多域名的内容。

两个web服务器同时运行。一个Apache2是9000端口,另一个Nginx是80端口。php是由Apache解析的。所以其实是分别配置Apache2和Nginx的多个域名即可。就是说Nginx的80端口域名(如domain.com)和Apache2的9000(如domain.com:9000)能同时指向一个相同的页面就成功了。按照Apache和Nginx的分别配置即可,当然前提是Nginx能正确转发到Apache的端口。

1.Nginx配置域名

Nginx的配置文件位置(根据不同的[......]

Read more

关于安装LNMP的问题总结

由于服务器数据搬迁,由原来的LAMP空间改为LNMP的VPS。问题遇到挺多。其实LNMP的安装并不复杂,然而问题在于由于选择主机环境,原本默认安装的是Rails版本的服务器,默认安装了Nginx,MySQL。当LAMP环境迁移过去时,会发现一系列问题。服务器往往为了优化某些性能,去掉某些模块,这就不知道默认的Nginx或者MySQL安装了那些模块,只有当程序运行时候才发现问题。

1.502 bad gateway

由于服务器默认没有安装php环境,于是安装了PHP,Apache2

sudo apt-get install php5 libapache2-mod-php5

安装后的默[......]

Read more