
1.具体方法是采用rewrite方式,在nginx的配置文件前添加80端口的强制跳转:
server{
listen 80;
server_name test.orcy.net;
#http强制跳转https
rewrite ^(.*)$ https://$host$1 permanent;
}
2.完整的配置文件如下:
server{
listen 80;
server_name test.orcy.net;
#http强制跳转https
rewrite ^(.*)$ https://$host$1 permanent;
}
server {
listen 443 ssl;
server_name test.orcy.net;
#charset koi8-r;
#access_log logs/host.access.log main;
access_log logs/test.orcy.net-ssl.log main;
error_log logs/test.orcy.net-ssl.error.log;
location / {
root /srv/www/html;
index index.php index.html index.htm;
}
ssl_certificate cert/XXXX.pem; #将domain name.pem替换成您证书的文件名
ssl_certificate_key cert/XXXX.key; #将domain name.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 ~ \.php$ {
root /srv/www/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
error_page 404 /404.html;
location = /404.html {
root html;
}
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
3.如果是非默认80/443端口的http强制跳转https该如何设置呢?
传送门>>《Nginx非80/443端口的http强制跳转https》
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。



评论(0)