温馨提示×

centos如何设置域名跳转

小樊
54
2026-10-02 20:07:09
栏目: 云计算

在 CentOS 上设置“域名跳转”通常指 将一个域名访问重定向到另一个域名(如 http://a.com → http://b.com),常见做法是通过 Web 服务器(Nginx 或 Apache) 实现。下面分情况说明。


一、使用 Nginx 设置域名跳转(推荐)

1. 安装 Nginx

yum install -y nginx
systemctl enable nginx
systemctl start nginx

2. 配置域名跳转

编辑 Nginx 配置文件(如 /etc/nginx/conf.d/redirect.conf):

示例:将 old.com 跳转到 new.com

server {
    listen 80;
    server_name old.com www.old.com;

    return 301 http://new.com$request_uri;
}

如果是 HTTPS 跳转

server {
    listen 443 ssl;
    server_name old.com;

    ssl_certificate     /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;

    return 301 https://new.com$request_uri;
}

3. 检查并重载

nginx -t
systemctl reload nginx

二、使用 Apache 设置域名跳转

1. 安装 Apache

yum install -y httpd
systemctl enable httpd
systemctl start httpd

2. 开启重写模块

vi /etc/httpd/conf/httpd.conf

确保有:

LoadModule rewrite_module modules/mod_rewrite.so

3. 配置虚拟主机跳转

编辑 /etc/httpd/conf.d/redirect.conf:

<VirtualHost *:80>
    ServerName old.com
    ServerAlias www.old.com
    Redirect 301 / http://new.com/
</VirtualHost>

或使用 rewrite:

<VirtualHost *:80>
    ServerName old.com
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^old.com [NC]
    RewriteRule ^/(.*)$ http://new.com/$1 [L,R=301]
</VirtualHost>

4. 重启 Apache

systemctl restart httpd

三、DNS 层面的“跳转”(注意)

  • DNS 不能真正跳转页面
  • 只能:
    • CNAME:让 www.old.com 指向 new.com
    • 但浏览器地址栏仍是 old.com

如果你要的是 浏览器地址变成新域名,必须用 Web 服务器跳转。


四、常见跳转类型说明

类型 说明
301 永久跳转(SEO 友好)
302 临时跳转
全站跳转 所有路径都跳
单页跳转 只跳某个 URL

五、示例总结

最常用做法(Nginx 301 全站跳转):

server {
    listen 80;
    server_name old.com www.old.com;
    return 301 https://new.com$request_uri;
}

如果你能告诉我:

  • 用的是 Nginx 还是 Apache
  • 是 HTTP 还是 HTTPS
  • 是 整站跳转还是部分跳转

我可以给你更精确的配置。

0 踩