Nginx安装配置SSL证书并强制http跳转到https

2017 年 3 月 13 日 0 条评论 924 次阅读 0 人点赞

申请免费https证书https://login.wosign.com/reg.html

先查看一下nginx是否有安装http_ssl_module,我这个是安装了https模块的,如果没有这个模块就需要nginx平滑升级添加ssl实现站内https。

可以参考http://www.open-open.com/lib/view/open1451624143370.html

申请成功后就会让你取回证书,我的是nginx,所以证书自然选择for nginx,上传到服务器的某个文件夹下面,nginx文件夹下面是最好的选择,然后配置nginx.conf文件


重启lnmp reload    试试访问      https://你的域名

说明生效了,但是此时http也可以访问https也可以访问,这个是还需要做一些设置,让其http强制跳转成https

nginx配置http强制跳转到https (其实就是做一个301跳转)
目的:访问http://sdk.open.test.com/时强制自动跳转到https://sdk.open.test.com/
修改nginx站点配置文件sdk.open.test.com.conf

server
{
listen 80;
server_name sdk.open.test.com;
return 301 https://$server_name$request_uri;
//rewrite ^/(.*) https://ssl.lanbing.org/$1 permanent; #关键代码仔细比较两者的跳转的区别
}

server
{
listen 443 ssl;
server_name sdk.open.test.com;
index index.html index.htm index.php;
root /data/www/web/;
charset utf-8;

location ~.*\.(swf|xml|mp3|png|jpg|gif|data)$ {
expires max;
}

location ~.*\.(css|js|mx)$ {
expires 96h;
}

location ~ /.svn/ {
deny all;
}

location ~ .*\.php$
{
include fastcgi.conf;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
expires off;
}

ssl on;
ssl_certificate /usr/local/nginx/ssl/ea93balk25xh3f9.crt;
ssl_certificate_key /usr/local/nginx/ssl/9yrt62bv1z4s35la.key;

access_log /data/logs/sdk.open.test.com.access.log access;
error_log /data/logs/sdk.open.test.com.error.log warn;
}

在试试访问HTTP的,正常应该就会自动跳转到HTTPS了。

雷雷

这个人太懒什么东西都没留下

文章评论(0)

(Spamcheck Enabled)