Nginx配置GoDaddy SSL证书步骤

这边文章记录在Nginx上配置SSL证书的过程,配置环境试用于Windows上的Nginx和GoDaddy买的SSL证书。

首先从这里下载OpenSSL tool,然后运行下面命令先生成一个key,装好后在命令行里运行

openssl genrsa -out www.mysite.com.key 2048

然后运行下面命令生成CSR文件

openssl req -new -key www.mysite.com.key -out www.mysite.com.csr

然后去GoDaddy提交CSR并且下载生成的证书,现在证书时,服务器类型选择Apache

image

这里要注意,下载回来的是2个crt文件,需要运行下面命令把他们合并成一个

type www.mysite.com.crt gd_bundle.crt > mysite_combined.crt

如果是linux下,则运行

cat www.mysite.com.crt gd_bundle.crt > mysite_combined.crt

现在就可以去修改nginx的配置文件了

ssl_certificate指向crt文件位置,ssl_certificate_key指向key文件位置,nginx SSL就可以工作了。

The website is under heavy load解决方法

在做网站做压力测试的时候,很容易模拟出每秒几百的http请求,如果要测试的网站是在nginx之后,这时候就会发现很多请求直接返回503 Service Unavailable错误,如下图所示。

image

这是由于在当前的并发请求过多的情况下,nginx默认会把请求放到一个队列里,一次排队让服务器处理。这个queue的上限默认是100,所以当请求超过queue上限的时候,nginx就会返回The website is under heavy load的错误信息了。

一个简单的解决方法便是修改passenger_max_request_queue_size,改成你需要的实际值,或者直接设成0,来禁用queue这个功能。

当然更好的方法是做服务器端的profiling,找出瓶颈,让每个http请求能更快的被处理完毕。

参考