1.Nginx已經編譯ssl 模塊,沒有的話須要從新編譯。2.已經購買SSL證書(廢話)php
1.先生成本身的KEYcss
cd /usr/local/nginx/conf/ openssl genrsa -out imcat.pem 2048
2.生成csr文件linux
openssl req -new -key imcat.pem -out imcat.csr Country Name (2 letter code) [AU]:CN //輸入國家簡寫 State or Province Name (full name) [Some-State]:JiangXi //省市 Locality Name (eg, city) []:JiuJiang //城市 Organization Name (eg, company) [Internet Widgits Pty Ltd]:Yangxinlin //組織名稱或公司名稱 Organizational Unit Name (eg, section) []: //能夠不用填 Common Name (eg, YOUR name) []:jungehost.com //輸入要配置ssl的域名,如yangxinlin.cn,注意yangxinlin.cn 和www.yangxinlin.cn 屬於不一樣的域名。 Email Address []:admin@yangxinlin.cn //輸入郵箱 Please enter the following ‘extra’ attributes to be sent with your certificate request A challenge password []: //能夠不用填 An optional company name []: //能夠不用填
3.去Namecheap網站啓用SSL證書nginx
進入Namecheap網站,點擊SSL CERTIFICATES菜單中的My Account下方的Your SSL Certificates,如圖所示:git
選擇你不曾使用過的SSL認證服務,點擊右邊的Active連接,既能夠開始申請激活你的SSL認證。(若是已經啓用能夠從新頒發,選擇Reissue,個人很快就過時了!)服務器
接下來咱們要發送一個認證簽名請求文件給Namecheap來完成激活過程,Web服務器軟件沒有Nginx,只有選擇other,下面的csr,填寫 imcat.csr的內容,即前面要求複製下來的以-----BEGIN CERTIFICATE REQUEST-----開頭到-----END CERTIFICATE REQUEST-----結尾的內容。ide
按Next後,如今能收到郵件的郵箱學習
最好就是直接提交,等待接收驗證郵件,而後輸入郵件的驗證碼就會獲得SSL證書了網站
4.將從NameCheap哪裏申請來的SSL證書解壓出來,上傳到/usr/local/nginx/conf/spa
5.而後執行如下命令,合併證書
cat imcat_in.crt>>PositiveSSLCA2.crt rm -rf imcat_in.crt mv PositiveSSLCA2.crt imcat_in.crt
6.更改Nginx的配置
server { listen 443; server_name imcat.in *.imcat.in; index index.PHP index.htm ; root /home/www/imcat/; ssl on; ssl_certificate imcat_in.crt; ssl_certificate_key imcat.pem; location / { try_files $uri $uri/ /index.php; location ~ .php$ { fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_index index.php; fastcgi_param HTTPS on; include fastcgi.conf; } } location ~ .*.(gif|jpg|jpeg|png|bmp|swf|js|css|ttf|woff)$ { expires 30d; } access_log /home/logs/imcat.in.access.log; }
7.重啓nginx就能夠了。
本文來自:Linux學習網