温馨提示×

如何迁移linux apache站点

小樊
36
2026-10-29 04:15:21
栏目: 智能运维

迁移 Linux 上的 Apache 站点通常涉及文件、数据库、配置和域名解析四个部分。下面给你一套通用、稳妥的操作流程(适用于 CentOS / Ubuntu / Debian 等常见发行版)。


一、准备工作

在原服务器和目标服务器上都确认:

httpd -v      # 或 apache2 -v
php -v        # 如有 PHP
mysql -V      # 或 mariadb -V

建议目标服务器 Apache、PHP、数据库版本 不低于 原服务器。


二、迁移网站文件

1. 打包原站点文件

常见目录:

  • CentOS: /var/www/html
  • Ubuntu: /var/www
cd /var/www
tar czf site.tar.gz html

2. 传输到新服务器

scp site.tar.gz user@new_server:/var/www/

3. 解压并设权限

cd /var/www
tar xzf site.tar.gz
chown -R apache:apache html   # CentOS
# chown -R www-data:www-data html  # Ubuntu

三、迁移 Apache 配置

1. 复制虚拟主机配置

常见位置:

  • CentOS: /etc/httpd/conf.d/
  • Ubuntu: /etc/apache2/sites-available/
scp /etc/httpd/conf.d/xxx.conf new_server:/etc/httpd/conf.d/

2. 启用站点(Ubuntu)

a2ensite xxx.conf
systemctl reload apache2

3. 检查配置

apachectl configtest

四、迁移数据库(如适用)

1. 原服务器导出

mysqldump -u root -p dbname > db.sql

2. 传输并导入

scp db.sql new_server:/root/
mysql -u root -p
CREATE DATABASE dbname;
USE dbname;
SOURCE /root/db.sql;

注意修改网站配置文件中的数据库地址、账号、密码。


五、调整域名解析

  • 修改 DNS 的 A 记录指向 新服务器 IP
  • 可先改 TTL 为 300 秒,减少生效时间
  • 测试时可临时改本地 hosts 文件

六、测试与切换

  1. 本地 hosts 绑定新 IP 测试站点
  2. 检查:
    • 页面正常
    • 图片/JS/CSS 加载
    • 后台登录
    • HTTPS 证书(如有)
  3. 确认无误后正式切 DNS

七、常见问题

  • 403 Forbidden:目录权限或 SELinux
    setsebool -P httpd_read_user_content 1
    
  • 500 错误:查看 Apache 错误日志
    tail -f /var/log/httpd/error_log
    
  • 重写规则失效:确认 mod_rewrite 已启用

如果你愿意,可以告诉我:

  • 使用的系统(CentOS / Ubuntu)
  • 是否用面板(宝塔 / cPanel)
  • 是否含数据库和 HTTPS

我可以直接给你对应系统的精确命令。

0 踩