阿里云centos7搭建HTTPS
目前苹果和微信小程序的接口,都建议或要求https进行数据传输。利用项目空档期,来学习研究一下HTTPS
1、服务器环境要求
服务器配置 centos7 + LNMP环境 + ssl
,购买域名,完成域名备案和服务器绑定。
2、购买云盾证书
证书品牌商有赛门铁克、GeoTrust等,商业用途可以对比和选择一下。证书有分专业型、免费型的,专业型主要针对企业用户。
我选择的个人DV型,输入简单个人信息即可,0元购买–>进行域名绑定,勾选生成TXT标签记录值–>等待证书自动签发,时间1天以内。
3、上传证书
服务器端创建目录,上传 ***.key 和 ***.pem文件至创建目录
mkdir /etc/nginx/cert
4、修改nginx配置
实现http和https都可以访问站点,修改配置文件如下:
server {
listen 80;
listen 443 ssl;
# listen [::]:443 ssl http2 default_server;
server_name api.geek720.com;
root /var/www/api/;
#
ssl_certificate "/etc/nginx/cert/214179396460449.pem";
ssl_certificate_key "/etc/nginx/cert/214179396460449.key";
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 10m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
#
# # Load configuration files for the default server block.
# include /etc/nginx/default.d/*.conf;
#
location / {
index index.php index.html index.htm;
}
#
error_page 404 /404.html;
location = /40x.html {
}
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
location ~ \.php {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index /index.php;
include /etc/nginx/fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~* ^/(css|img|js|flv|swf|download)/(.+)$ {
root $root_path;
}
location ~/\.ht {
deny all;
}
}
5、重启nginx服务,并测试配置结果
修改nginx配置文件保存退出,重启nginx服务</>
service nginx restart
打开地址栏,输入 https:api.geek720.com, 展示结果如下,即https配置完成。