Nginx强制使用https访问
今天给自己的博客加上了https支持,这句话说的也不是很准确,其实用上https已经很久了,只不过之前怕麻烦,没有自己申请ssl证书,使用了Cloudflare,算起来也用了https很久了。这篇主要说下我用上自己申请的ssl证书后怎么处理强制全站使用https的。
# 配置信息有所删减请别无脑使用,起到作用的仅两个if代码块
server {
listen 80;
listen 443 ssl;
ssl_certificate /etc/nginx/ssl/xxxx.cer;
ssl_certificate_key /etc/nginx/ssl/xxxx.key;
root /home/xxx/xxx_blog;
server_name www.xxxxx.space xxxxx.space;
location / {
index index.html index.htm;
}
# 当请求服务器端口为80时,重定向为https
if ($server_port = 80) {
return 301 https://$server_name$request_uri;
}
# 当请求协议为http重定向为https
if ($scheme = http) {
return 301 https://$server_name$request_uri;
}
}