下面按常见场景给你一套从 CentOS 迁移 Apache 站点的完整思路,适用于 CentOS 6/7/8 → 新 CentOS / Rocky / Alma / 其他 Linux。
httpd -v
# 或
apachectl -v
/var/www/html)VirtualHost).htaccess、CGI、PHP、Python 等tar czf /tmp/site.tar.gz /var/www/html
# 或指定目录
tar czf /tmp/site.tar.gz /data/www/example.com
cp -r /etc/httpd /tmp/httpd_conf_backup
常用目录:
/etc/httpd/conf/httpd.conf/etc/httpd/conf.d/*.confmysqldump -u root -p dbname > /tmp/db.sql
scp /tmp/site.tar.gz root@new_server:/tmp/
scp /tmp/httpd_conf_backup root@new_server:/tmp/
scp /tmp/db.sql root@new_server:/tmp/
# CentOS / Rocky / Alma
yum install httpd -y
# 或
dnf install httpd -y
tar xzf /tmp/site.tar.gz -C /
cp -r /tmp/httpd_conf_backup/* /etc/httpd/
⚠ 注意:
DocumentRootServerNamesystemctl enable httpd
systemctl start httpd
/etc/pki/tls/certs/
/etc/pki/tls/private/
yum install certbot python3-certbot-apache
certbot --apache
mysql -u root -p
create database dbname;
use dbname;
source /tmp/db.sql;
chown -R apache:apache /var/www/html
chmod -R 755 /var/www/html
setsebool -P httpd_can_network_connect 1
restorecon -Rv /var/www
查看状态:
getenforce
新服务器IP domain.com
tail -f /var/log/httpd/access_log
tail -f /var/log/httpd/error_log
❌ 403 Forbidden
→ SELinux / 目录权限问题
❌ 500 Internal Error
→ PHP 版本不一致 / .htaccess 语法
❌ 站点打不开
→ DocumentRoot 路径错误
如果你愿意,可以告诉我:
我可以直接给你精确命令版迁移方案。