标签归档:服务器

推荐一个不错的nginx教程

推荐一个不错的nginx服务器软件教程: http://openresty.org/download/agentzh-nginx-tutorials-zhcn.html

这个nginx教程很有点特别。作者制作了一个独特的软件包(openresty),将nginx和一些第三方modules合在一起,产生一个独立的网页程序平台。。。 所以这个nginx教程读起来会更新是一个脚本语言教程。不过这倒提供了一个很特别的切入nginx配置语法的视角。作者深入浅出,语言简明,而且很多例子代码。总之是非常难得的教程。可惜的是教程应该还在写作过程中,还不完整。期待早日有完整版本现世。

发表在 站长文档 | 标签为 , , | 留下评论

linode上各个VPS的流量限制是共享的

更新:就在这两天,Linode上的流量限制提高到了原来的10倍。看来大多数站长不用再关注Linode的流量限制问题了。

Linode是目前为止我感觉最好用的网站空间提供商。2年多的使用体验让我很满意。但到今天才知道原来Linode上各个vps的流量是共享的。也就是说如果有2个Linode 512,流量是200GB/月x2,共400GB。如果其中一个VPS做mysql数据服务器,另一个做页面前端服务器,那个数据服务器有可能产生接近0的流量(Linode之间的内网流量不计在流量限额之内),而另一个vps就可以使用掉余下的所有400GB流量,而不是说明中的200GB。

以下是所有我所知的关于Linode流量限制相关的信息:
1.Linode上的VPS有流量限制, 512的是200GB, 1G的是400GB,随价格的上升线性增加。
2.多个Linode之间的VPS内部传输流量不计入流量限制计算。
3.上传到Linode的流量不计入流量限制计算,只计算从Linode下载的数据流量。
4.所有Linode之间的流量是加在一起共享的。如上文所详述。
5.如果你网站的流量超出限额,会在次月初被加收额外的费用。收费标准是0.1美元每GB。(这个价格同Additional Transfer 100GB 10美元一个月的标准是相当的。)
6.你可以在Extras中添加如上的Additional Transfer,这个是按天收费的。比如你选100GB 10美元一个月的选项,如果当月只有3天了,你只会被收1美元,同时你得到的额外流量也只有10GB。如果你在使用不到一个月前取消这个功能,Linode.com也会退回余下天数的钱,并收回余下天数的额外流量。个人感觉不用使用这个功能,原因参看上条。

发表在 站长文档 | 标签为 , , , , | 留下评论

再谈Nginx Rewrite, 中文URL和其它

上次谈到过Nginx和中文URL的问题,这几天又加深了认识。 多分享几个关于Nginx Rewrite的经验。

Nginx匹配指定中文URL的方法:

rewrite "(*UTF8)^\x{66f4}\x{6539}$" /index.html last;

这个会将 http://www.cslog.cn/%E6%9B%B4%E6%94%B9 重定向到http://www.cslog.cn/index.html。
‘/%E6%9B%B4%E6%94%B9′是中文URL ‘/更改’, \x{66f4}\x{6539}是这两个汉字的Unicode编码。

注意配合PCRE 7.9以上版本使用,详细看Nginx和中文URL的问题
继续阅读

发表在 信息处理, 站长文档 | 标签为 , , , , , , , , , , , , , | 一条评论

Nginx、PCRE和中文URL(UTF8编码)rewrite路径重写匹配问题

最近遇到了使用Nginx 重写中文UTF8编码路径的问题。 才发现默认情况下Nginx的rewrite是不支持UTF8匹配的。 比如:

rewrite ^/(..)$ /2个字符文章.html break; #用2个点
可以匹配到 /ab 或 /51, 但 /汉字 是匹配不到的。 我测试了一下, 要匹配两个字的 /汉字 路径, 得用

rewrite ^/(……)$ /2个汉字文章.html break; #要用六个点

如果要让 ^/(..)$ 匹配到2个汉字字符,得开启Nginx对UTF8字符的正则支持, 准确点说是开启Nginx使用的PCRE库的对UTF8字符的支持。因为Nginx的rewrite模块是调用PCRE来处理正则的。 如果PCRE没有问题,Nginx支持UTF8编码的重写样式是:

rewrite "(*UTF8)^/(..)$" /2个字符文章.html break;
#注意(*UTF8)前缀和引号的加入。

继续阅读

发表在 信息处理, 站长文档 | 标签为 , , , , , , , , , , , , , | 2 条评论

使用Unicorn替代Mongrel作为Ruby on Rails的服务器

先前的开发的Ruby on Rails网站使用的服务程序是Mongrel + Nginx, 现在用了Rails 3, 发现Mongrel对它有兼容问题, 所以要换一个。 虽然现在Phusion Passenger大行其道, 但使用前要重新编译Nginx。 为了避免重新安装nginx,我找到mongrel的替代品Unicorn。 没想到unicorn的设置非常方便。 我记录在这里供大家参考:

安装unicorn:

sudo gem install unicorn

创建网站配置文件(myproject是项目名称):
继续阅读

发表在 Ruby on Rails, 站长文档 | 标签为 , , , , | 一条评论

Ubuntu 10.04 上安装Nginx 0.8.52 + PHP-fpm 5.3.3 + APC和MySQL

Ubuntu 10.04 上源码编译安装Nginx 0.8.52 + PHP-fpm 5.3.3 + APC和MySQL
Ubuntu 是服务器上常用的Linux发行版本. 10.04是最新的LTS版本. Nginx则是占用内存少, 速度快的网页server的后起之秀. PHP从5.3.3起, 内置了FPM补丁, 跟nginx的兼容性又上了一个台阶. 本文是在Ubuntu 10.04上源码编译安装nginx 0.8.52, PHP-fpm 5.3.3, 加APC PHP加速的操作教程. (最后使用apt-get安装mysql数据库).

注意, 整个安装过程都是使用root帐号.

继续阅读

发表在 站长文档 | 标签为 , , , , , | 4 条评论

中文文件名编码和html文件访问

之前用windows服务器, 上面的有中文名的html文件。 为了保证访问, 链接到这些文件的URL做了中文编码处理。 那时使用的是ASP写的, 编码用的是GB2312. 最近想把这个网站搬到linux服务器上. 将文件上传到linux服务器后发现原来的链接访问不到中文html文件. 到后来才想到自己linux系统上默认使用的是utf-8编码文件系统. 后来将FTP软件设定为GB2312编码, 重新上传这些文件后才问题解决了.

发表在 站长文档 | 标签为 , | 留下评论