我的应用程序使用rails 3.2和ruby 1.9,必须在我的系统上运行https,域名为https://welcome.com。所以我通过为域名和https
创建ssl证书来配置我的nginx短信的短信:
# HTTPS server
#
server {
listen 443 ssl;
server_name welcome.com;
root html;
index index.html index.htm;
ssl on;
ssl_certificate /etc/nginx/ssl/server.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
ssl_session_timeout 5m;
}
我可以通过调用welcome.com和https://welcome.com来查看nginx主页。没有运行rails应用程序
我的应用程序也成功运行在端口443中,但在浏览器中查询后https://welcome.com
Rails终端显示错误:
ERROR bad Request-Line `\x16\x03\x01\x00�\x01\x00\x00�\
ERROR bad URI `._i\b8\x10�yA�^6�v�M|
在浏览器投掷错误中:
SSL received a record that exceeded the maximum permissible length.
(Error code: ssl_error_rx_record_too_long)
甚至尝试重复清除浏览器历史记录,但结果是一样的。
我不确定自己错了什么,任何人都可以帮助我吗?
我在证书创建方面有任何错误吗?
答案 0 :(得分:11)
您不能同时拥有listen 443 ssl;
和 ssl on;
,删除ssl on;
行并重新启动nginx。