我想和Nginx一起使用GoDaddy ssl。我正在努力让这个问题发挥作用。任何帮助,将不胜感激。
我做了以下事情: openssl req -new -newkey rsa:2048 -nodes -keyout img.example.com.key -out img.example.com.csr
将此问题交给GoDaddy并申请了新证书。
接下来我将两个crt文件合并为一个。
假设您的证书文件名为example.com.crt,请使用此命令创建名为example.com.chained.crt的组合文件(用您自己的域替换突出显示的部分):
cat example.com.crt intermediate.crt > example.com.chained.crt
server_name example.com;
ssl_certificate /home/sammy/example.com.chained.crt;
ssl_certificate_key /home/sammy/example.com.key;
当我尝试启动Nginx时,我现在看到了这个错误:
sudo nginx -t
nginx:[emerg] SSL_CTX_use_PrivateKey_file(“/ etc / nginx / ssl-certs / img.example.com.key”)失败(SSL:错误:0906D06C:PEM例程:PEM_read_bio:无起始行:期望:任何私有KEY错误:140B0009:SSL例程:SSL_CTX_use_PrivateKey_file:PEM lib)
有人知道我为什么会收到这个错误吗?
由于 菲尔
答案 0 :(得分:4)
有同样的问题。将编码从UTF-8
更改为ANSI
对我来说确实有用。
答案 1 :(得分:1)
从UTF-8到ANSI的Notepad ++编码为我做到了。更改编码,保存,scp / winscp /复制到服务器。完成。
Unix的版本是为了节省复制过程的时间:
iconv -c -f UTF8 -t ASCII /etc/nginx/certs/genprivkey.key >> /etc/nginx/certs/genprivkey.key
答案 2 :(得分:0)
你可以试试这个:
我希望您使用以下行复制粘贴:
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
-----BEGIN RSA PRIVATE KEY-----
...
-----END RSA PRIVATE KEY-----
如果它不起作用,您可以尝试this