转:让你的网站升级到HTTP/2
HTTP/2(超文本传输协议第2版,最初命名为HTTP 2.0),是HTTP协议的的第二个主要版本,使用于万维网。HTTP/2是HTTP协议自1999年HTTP 1.1发布后的首个更新,主要基于SPDY协议。它由互联网工程任务组(IETF)的Hypertext Transfer Protocol Bis(httpbis)工作小组进行开发。该组织于2014年12月将HTTP/2标准提议递交至IESG进行讨论,于2015年2月17日被批准。HTTP/2标准于2015年5月以RFC 7540正式发表。——维基百科HTTP/2也算是今年的一个热点,Nginx在2015年09月22日发布的1.9.5版本中开始支持了HTTP/2,这两天看到许多网站都升级到了HTTP/2,正好又赶上周末,于是身为不折腾会死星人的我开始折腾升级HTTP/2,也就有了这篇文章。
https://static.iwch.me/static/music/wuxin.mp3
响应速度真好看
我现在使用的是LNMP的一键安装包,内置的Nginx版本是1.8.0,这个版本显然不行。虽然这个一键安装包提供了Nginx升级脚本,但是我试了一下,莫名其妙的出错,而且修改参数什么的比较麻烦,加上Nginx关于HTTP/2的官方文档中推荐OpenSSL版本要高于1.0.2,而我现在的OpenSSL版本是1.0.1,所以索性自己重新编译一下Nginx。
首先使用putty或类似的SSH工具登陆VPS或服务器,分别把最新版本的OpenSSL和Nginx下载到服务器上并分别解压:
wget http://www.openssl.org/source/openssl-1.0.2d.tar.gz
tar zxf openssl-1.0.2d.tar.gz
wget http://nginx.org/download/nginx-1.9.7.tar.gz
tar zxf nginx-1.9.7.tar.gz
然后进入Nginx文件夹开始编译Nginx:
cd nginx-1.9.7
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_module --with-http_v2_module --with-openssl=/root/openssl-1.0.2d
make
make install
其中./configure后面的参数可以根据实际需要适当增减,/root/openssl-1.0.2d这个路径需要改成解压OpenSSL后得到的目录的路径。
接下来,修改配置文件如下:
server {
listen 443 ssl http2;
ssl_certificate server.crt;
ssl_certificate_key server.key;
}
确认无误后,重载Nginx配置:nginx -s reload最后打开Chrome开发者工具,点击Network,刷新页面,如果Protocol下面由http/1.1变成了h2就代表成功啦!
文章随时可能更新,转载时请注意保留本人署名和本文链接,谢谢!
转:https://www.iwch.me/archives/614.html
如果Protocol下面由http/1.1
这个在哪,没有找到{:112:} hhmx 发表于 2016/3/18 14:32
如果Protocol下面由http/1.1
这个在哪,没有找到
谷歌浏览器,右键标签,激活Protocol 小樱 发表于 2016/3/18 14:33
谷歌浏览器,右键标签,激活Protocol
找到了,谢谢萌萌樱{:121:}百度用的还是http/1咱论坛也是啊1.1 hhmx 发表于 2016/3/18 14:47
找到了,谢谢萌萌樱百度用的还是http/1咱论坛也是啊1.1
嗯。论坛没换。 修改哪里的配置啊 milong 发表于 2016/5/21 16:26
修改哪里的配置啊
推荐用kangle server
{
listen 80;
listen 443 default_server ssl http2;
server_name isoo.me;
index index.html index.htm index.php default.html default.htm default.php;
root /home/wwwroot/isoo.me;
if ($scheme = http) {
return 301 https://isoo.me$request_uri;
}
ssl_certificate /usr/local/nginx/conf/vhost/server.crt;
ssl_certificate_key /usr/local/nginx/conf/vhost/ssl_de.key;
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
include wordpress.conf;
#error_page 404 /404.html;
location ~ [^/]\.php(/|$)
{
# comment try_files $uri =404; to enable pathinfo
try_files $uri =404;
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fastcgi.conf;
#include pathinfo.conf;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
access_log off;
}
某好友提供修正 小樱 发表于 2016/6/17 21:17
某好友提供修正
443端口和80端口调换下,不然访问http会出现欢迎页面
页:
[1]