nginx 80端口重定向到443端口

nginx 80端口重定向到443端口,也就是http访问自动跳转到https
配置如下:
一、按照如下格式修改nginx.conf 配置文件,80端口会自动转给443端口,这样就强制使用SSL证书加密了。访问http的时候会自动跳转到https上面。

server {
    listen 80;
    server_name www.域名.com;
    rewrite ^(.*)$ https://${server_name}$1 permanent; 
}
server {
    listen 443;
    server_name www.域名.com;
    root /home/wwwroot;
    ssl on;
    ssl_certificate /etc/nginx/certs/server.crt;
    ssl_certificate_key /etc/nginx/certs/server.key;
    ....
}

备注: ${server_name}可以换成$host

二、重启nginx。

三、示例(以下是我们生产的配置)

server {
    listen 80;
    server_name www.test.com;
    rewrite ^(.*)$ https://${server_name}$1 permanent; 
}

server {
    listen 443;
    server_name www.test.com;
    ssl on;
    ssl_certificate   /etc/pki/CA/certs/214321311540956.pem;
    ssl_certificate_key  /etc/pki/CA/certs/214321311540956.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;   
    index index.php index.htm index.html;
    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;

    location ~ \.php {
    root /alidata/www/html;
    fastcgi_pass unix:/tmp/php-cgi.sock;
    fastcgi_index index.php;
    include   fastcgi.conf;

    set $path_info "";
    set $fastcgi_script_name_new $fastcgi_script_name;

        if ($fastcgi_script_name ~*   "^(.+\.php)(/.+)$"  ) {
            set $fastcgi_script_name_new $1;
        set $path_info $2;
    }

    fastcgi_param   SCRIPT_FILENAME   $document_root$fastcgi_script_name_new;
    fastcgi_param   SCRIPT_NAME   $fastcgi_script_name_new;                    
    fastcgi_param   PATH_INFO $path_info;
    }

    location / {
    root /alidata/www/html;
    index index.php index.html index.htm;
    if (!-e  $request_filename){
        rewrite ^(.*)$ /index.php$1 last;
    }
  }
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值