最近在寫一個小程序,因為小程序官網(wǎng)上必須要使用https,之前網(wǎng)站都是使用的http,而且使用的阿里云服務(wù),于是就在阿里云上購買的ssl服務(wù),以下是配置過程。
1.首先是去阿里云上購買ssl,當然有免費版,但是只能支持一個域名,而且同一個域名只能購買20個證書,各個明細子域名都算一個域名
2.購買ssl證書之后去證書控制臺,這個時候需要補全資料,補全之后等待審核,一般只需幾分鐘就能審核通過。
3.審核之后就需要去下載證書
4.然后需要去所在服務(wù)器上配置key和pem,當然我們這里選擇的是自動生成key,如果有必要可以自己去制作key,按照阿里云上的步驟操作就是了。如下所示:
server {
listen 443;
server_name localhost;
ssl on;
root html;
index index.html index.htm;
ssl_certificate cert/21.pem;
ssl_certificate_key cert/21.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}
這時候不要忙著去重啟nginx,首要要去查看nginx是否增加ssl模塊,如果沒有,需要重新編譯,先執(zhí)行sudo apt-get install openssl libssl-dev安裝ssl,然后進入nginx目錄執(zhí)行如下語句:
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--add-module=/home/scp/fastdfs-nginx-module/src \
--with-http_stub_status_module \
--with-http_ssl_module
執(zhí)行完語句后執(zhí)行make 然后 make install,這個時候如果重啟nginx后,外網(wǎng)可能還是無法訪問,因為阿里云端口需要我們自己配置,需要先去安全組添加對443端口的過濾,我這里是ubuntu系統(tǒng),同時要在終端執(zhí)行ufw allow 443,這時去訪問調(diào)用即可。然后需要將80端口訪問跳轉(zhuǎn)到443
server {
listen 80;
server_name www.域名.com;
rewrite ^(.*) https://$server_name$1 permanent;
}
到此這篇關(guān)于使用nginx方式實現(xiàn)http轉(zhuǎn)換為https的示例代碼的文章就介紹到這了,更多相關(guān)nginx http轉(zhuǎn)換為https內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!