VPS侦探论坛

标题: 军哥,小白有一个301重定向跳转的新问题 [打印本页]

作者: idtaanlcoe    时间: 2021-1-17 01:29
标题: 军哥,小白有一个301重定向跳转的新问题
参考了很多官网的教程和帖子依然没有办法做到 http://a.com,http://www.a.com,https://a.com
以上三种形式都跳向到https://www.a.com,军哥求赐教

作者: idtaanlcoe    时间: 2021-1-17 09:25
server
    {
        listen 80;
        #listen [::]:80;
        server_name www.a.com a.com;
        if ($host = 'a.com') {
  return 301 https://www.a.com$request_uri;
}
        index index.html index.htm index.php default.html default.htm default.php;
        root  /home/wwwroot/www.a.com;
        return 301 https://www.a.com$request_uri;
        if ($host = 'a.com') {
  return 301 https://www.a.com$request_uri;
}
        
        include rewrite/typecho.conf;
        #error_page   404   /404.html;

        # Deny access to PHP files in specific directory
        #location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }

        include enable-php-pathinfo.conf;

        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            expires      30d;
        }

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

        location ~ /.well-known {
            allow all;
        }

        location ~ /\.
        {
            deny all;
        }

        access_log  /home/wwwlogs/www.a.com.log;
    }

server
    {
        listen 443 ssl http2;
        #listen [::]:443 ssl http2;
        server_name www.a.com a.com;
        if ($host = 'a.com') {
  return 301 https://www.a.com$request_uri;
}
        index index.html index.htm index.php default.html default.htm default.php;
        root  /home/wwwroot/www.a.com;
        

        ssl_certificate /usr/local/nginx/conf/ssl/a.com.crt;
        ssl_certificate_key /usr/local/nginx/conf/ssl/a.com.key;
        ssl_session_timeout 5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
        ssl_prefer_server_ciphers on;
        ssl_ciphers "TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5";
        ssl_session_cache builtin:1000 shared:SSL:10m;
        # openssl dhparam -out /usr/local/nginx/conf/ssl/dhparam.pem 2048
        ssl_dhparam /usr/local/nginx/conf/ssl/dhparam.pem;

        include rewrite/typecho.conf;
        #error_page   404   /404.html;

        # Deny access to PHP files in specific directory
        #location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }

        include enable-php-pathinfo.conf;

        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            expires      30d;
        }

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

        location ~ /.well-known {
            allow all;
        }

        location ~ /\.
        {
            deny all;
        }

        access_log  /home/wwwlogs/www.a.com.log;
    }

作者: licess    时间: 2021-1-17 16:09
你没说具体不能跳转还是跳转错误,没法做具体判断

http虚拟主机的你要301跳转到 https://www.a.com 的话不用判断$host ,直接 return 301 https://www.a.com$request_uri; 就行了
其他没有问题,修改配置文件必须要重启nginx且没有报错才能生效
另外浏览器一般都缓存301,如果之前有其他设置的301可能会被缓存,如有清缓存或无痕模式测试
作者: idtaanlcoe    时间: 2021-1-17 16:39
谢谢,已解决了
作者: idtaanlcoe    时间: 2021-1-17 16:39
谢谢,已解决了




欢迎光临 VPS侦探论坛 (https://bbs.lnmp.com/) Powered by Discuz! X3.4