安装支持speedy(spdy)协议的nginx web 服务

发布: 2013-03-21 09:57

安装支持speedy(spdy)协议的nginx web 服务

spdy协议是google提出的当前http协议的扩展协议,
主要目的用于多网页请求的合并发送,
提高页面响应效率,改善网页请求处理的用户体验。

这两天尝试安装了一下,对于nginx来说,安装还比较简单。
安装步骤:
*) 下载nginx-1.3.x源码包,并解压
*) 下载spdy协议补丁文件,http://nginx.org/patches/spdy/patch.spdy.txt
*) 进入源码目录,给nginx源代码打补丁
patch -p1 < ../patch.spdy.txt
*) 开始编译,
对于比较新的系统,直接使用以下参数编译安装
$ ./configure --with-http_ssl_module --with-http_spdy_module

对于比较老的系统,可能需要单独安装最新的openssl-1.0.1x库,
并且使用命令行指定头文件和库目录的方式编译
$ ./configure --with-http_ssl_module \
--with-http_spdy_module \
--with-cc-opt="-I/opt/local/include" \
--with-ld-opt="-L/opt/local/lib"

*) 最后, make && make install 就结束了
*) 开始配置nginx让其运行时支持spdy协议。
*) 创建ssl证书,使用openssl 命令创建,生成两个文件,server.key和server.crt,
放在nginx配置目录/path/to/nginx/prefix/conf/下。
*) 在nginx中配置以下选项,
......
server {
listen 8086 ssl spdy default_server;
ssl_certificate server.crt;
ssl_certificate_key server.key;
......
}
......​
*) 测试:
https://localhost:8086/
*) 站点确实能访问了,怎么知道是否使用了spdy协议了呢
现在的浏览器都有一个spdy指示器插件,安装上后,
会在地址栏最后显示一个高亮/灰色的闪电开关的图标,
用来标识当前访问的站点是否支持spdy协议。
*) 拿个大点的站点再试试效果吧。

需要注意的事项,
*) spdy协议是必须依赖https的,也就是说使用spdy协议
的站点一定是https协议方式访问的。
对于测试站点,使用自创建证书还可以,但对于正式的网站,
就需要申请正式的网站证书了。否则现在的浏览器都会报告证书不可靠,
估计会吓走一部分网站访问用户的。
*) 另一个需要注意的,由于spdy协议还比较新,对于nginx对该协议的支持
是通过第三方提供的补丁实现,并且补丁只能用于当前最新的nginx-1.3.x开发
版本的,使用时还可能存在些问题。
好在有google的强力支持,据http标准机构现在讨论的http2.0协议来看,
spdy很可能成为后续http标准协议新版本的一部分。
*) spdy协议还依赖当前最新的openssl库的一个扩展功能,对当前的服务器系统来说,
一般都需要另外安装新版本的openssl-1.0.1x+库才能正常使用spdy协议。

参考:
http://nginx.org/patches/spdy/README.txt​


原文: http://qtchina.tk/?q=node/726

Powered by zexport