我尝试按照以下步骤安装支持 spdy 的 nginx:宁克斯,我使用了这个配置命令
./configure --with-http_ssl_module --with-http_spdy_module --with-openssl="/..../openssl/openssl-1.0.1c"
但是当我去 spdycheck.org 检查我的网站时,我得到的结果是 NPN 已启用但 spdy 没有启用,找不到任何可以立即开始破解的信息(错误日志中没有任何内容),大家有什么想法吗?
编辑:
# Force URL on https and www
server{
listen 80;
server_name www.example.com example.com;
rewrite ^ https://www. example.com$1 permanent;
}
server {
listen 443 ssl spdy;
ssl_certificate /usr/ssl/nginx/server.crt;
ssl_certificate_key /usr/ssl/nginx/server.key;
server_name www. example.com;
access_log /var/log/nginx/test.tedxnanjing.access;
error_log /var/log/nginx/test.tedxnanjing.error error;
fastcgi_read_timeout 120;
location / {
root /var/www/html;
index index.html index.htm index.php;
}
location ~* ^.+.(jpg|jpeg|gif|bmp|ico|png|css|js|swf|log|zip|tar)$ {
root /var/www/html;
expires max;
}
location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/html$fastcgi_script_name;
}
}
答案1
您运行的是哪个版本的 NGINX?输入:nginx -V
或,nginx -v
无需其他参数即可输出。如果您运行的 NGINX 低于 1.5.10,则您正在运行 SPDY draft 2,据我所知,该版本已弃用,无法在浏览器中正确显示。此外,您还需要 OpenSSL 版本 1.0.1 及更高版本,最好是版本 1.0.1g,其中包含 Heartbleed 漏洞补丁。
如何检查 SPDY 是否正常工作?我的建议是通过chrome://net-internals/#spdy
Google Chrome 进行检查(只需在 Chrome 搜索栏中输入)或通过 Firefox SPDY 指示器插件进行检查。