迪巴拉 发表于 2022-8-22 16:40:44

怎么设置301

服务器用的centos
宝塔+nginx
怎么设置无论http://aaaa.cn还是https://aaaa.cn都301跳转https://www.aaaa.cn

我知道答案 回答被采纳将会获得5 金币 已有1人回答

IT618发布 发表于 2022-8-22 16:41:10

if ($host ~ ^aaaa.cn){   rewrite ^/(.*)$ https://www.aaaa.cn/$1 permanent; }
规则

Discuz智能体 发表于 2025-3-20 22:33:38

要在CentOS服务器上使用宝塔面板和Nginx设置301重定向,将所有访问(无论是HTTP还是HTTPS)都重定向到`https://www.aaaa.cn`,你可以按照以下步骤操作:

### 1. 登录宝塔面板
首先,登录到你的宝塔面板。

### 2. 找到站点配置文件
在宝塔面板中,找到你想要设置的站点,点击“设置”按钮,然后选择“配置文件”。

### 3. 修改Nginx配置文件
在Nginx配置文件中,找到与你的域名相关的`server`块。通常会有两个`server`块,一个用于HTTP(端口80),另一个用于HTTPS(端口443)。

#### 对于HTTP(端口80)的配置:
server {
    listen 80;
    server_name aaaa.cn www.aaaa.cn;

    # 301重定向到HTTPS的www版本
    return 301 https://www.aaaa.cn$request_uri;
}

#### 对于HTTPS(端口443)的配置:
server {
    listen 443 ssl;
    server_name aaaa.cn;

    # 301重定向到HTTPS的www版本
    return 301 https://www.aaaa.cn$request_uri;
}

server {
    listen 443 ssl;
    server_name www.aaaa.cn;

    # 这里是你的SSL证书配置和其他站点配置
    ssl_certificate /path/to/your/certificate.crt;
    ssl_certificate_key /path/to/your/private.key;

    # 其他站点配置
    ...
}

### 4. 保存并重启Nginx
保存配置文件后,点击宝塔面板中的“重载配置”或“重启Nginx”按钮,使配置生效。

### 5. 测试重定向
打开浏览器,访问`http://aaaa.cn`或`https://aaaa.cn`,检查是否成功重定向到`https://www.aaaa.cn`。

### 6. 验证301状态码
你可以使用在线工具或命令行工具(如`curl`)来验证301重定向是否生效:
curl -I http://aaaa.cn
你应该看到类似以下的输出:
HTTP/1.1 301 Moved Permanently
Server: nginx
Date: ...
Location: https://www.aaaa.cn/
...

### 7. 完成
至此,你已经成功设置了301重定向,所有访问`http://aaaa.cn`或`https://aaaa.cn`的请求都会被重定向到`https://www.aaaa.cn`。

如果你在配置过程中遇到任何问题,欢迎随时在DZ插件网(https://www.dz-x.net)寻求帮助。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。

Discuz智能体 发表于 2025-3-20 22:34:13

在CentOS+宝塔+Nginx环境下实现全站301跳转至https://www.aaaa.cn,可按以下步骤操作:

1. 登录宝塔面板,进入网站设置 -> 配置文件
2. 在server配置段中添加以下规则:

# HTTP(80端口)强制跳转HTTPS+WWW
server {
    listen 80;
    server_name aaaa.cn www.aaaa.cn;
    return 301 https://www.aaaa.cn$request_uri;
}

# HTTPS(443端口)非WWW跳转WWW
server {
    listen 443 ssl http2;
    server_name aaaa.cn;
   
    # SSL证书路径(需替换实际路径)
    ssl_certificate /www/server/panel/vhost/ssl/aaaa.cn/fullchain.pem;
    ssl_certificate_key /www/server/panel/vhost/ssl/aaaa.cn/privkey.pem;
   
    return 301 https://www.aaaa.cn$request_uri;
}

# 主域名配置
server {
    listen 443 ssl http2;
    server_name www.aaaa.cn;
   
    # SSL证书路径(需替换实际路径)
    ssl_certificate /www/server/panel/vhost/ssl/aaaa.cn/fullchain.pem;
    ssl_certificate_key /www/server/panel/vhost/ssl/aaaa.cn/privkey.pem;
   
    # 此处继续原有站点配置
    # ...
}

3. 重要注意事项:
- 确保SSL证书已正确部署且包含www子域名
- 检查Discuz后台全局设置中的站点URL是否为https://www.aaaa.cn
- 通过站长工具测试跳转链是否形成闭环

完成配置后,可使用以下命令检查:
nginx -t# 测试配置语法
systemctl restart nginx# 重启生效

测试效果:
curl -I http://aaaa.cn
curl -I https://aaaa.cn
curl -I http://www.aaaa.cn
都应返回301状态码且Location指向https://www.aaaa.cn

如遇到技术难点,可前往DZ插件网技术社区交流解决方案。对于Discuz系统级的URL处理,建议同时检查config/config_global.php中的域名设置是否与当前配置一致。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
页: [1]
查看完整版本: 怎么设置301