因为专注
所以专业

同域名不同服务器网站搬家教程

拿 宝塔举例:

1.备份网站和数据库

2.解析网站到新的IP

3.创建网站和数据库和原来的网站和数据库一致

4.宝塔-安全里面开放80和443端口,443端口是HTTPS端口

5.点击文件夹-找到网站目录,上传网站备份的文件,点击数据库导入网站备份的数据库

6.重启nginx服务器或者IIS服务器

7.删除网站根目录的wp-config.php和wp-config.php,在替换重新启动服务器试试

8.重新生成

cd /www/wwwroot/sc.xiaoxinglai.com
rm -f .htaccess
echo "# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress" > .htaccess

 

 

AI回答如下可以参考:

🔍 第一步:快速诊断

1. 直接测试网站根目录

在服务器上测试是否能访问默认页面:

bash
# 创建一个简单的测试文件
cd /www/wwwroot/sc.xiaoxinglai.com
echo "<?php echo 'Test OK'; ?>" > test.php

然后在浏览器访问:

text
http://sc.xiaoxinglai.com/test.php

如果能显示 “Test OK”,说明 PHP 运行正常。

2. 检查 PHP 错误日志

bash
# 查看 PHP-FPM 错误日志
tail -f /var/log/php8.2-fpm.log
# 或
tail -f /var/log/php-fpm/php-fpm.log

# 查看 PHP 错误日志
grep -r "sc.xiaoxinglai.com" /var/log/php/

3. 检查 Nginx/Apache 错误日志

bash
# Nginx
tail -f /var/log/nginx/error.log

# Apache
tail -f /var/log/apache2/error.log

🛠️ 第二步:系统检查

检查服务状态

bash
# 查看 PHP-FPM 状态
systemctl status php8.2-fpm

# 查看 Web 服务器状态
systemctl status nginx
# 或
systemctl status apache2

# 重启服务
systemctl restart nginx
systemctl restart php8.2-fpm

检查 PHP 配置

bash
# 检查 PHP 版本是否正确
php -v

# 检查 PHP 模块
php -m | grep -E "mysqli|pdo_mysql|gd|mbstring"

📋 第三步:WordPress 特定检查

1. 检查 WordPress 配置文件

bash
# 检查 wp-config.php 权限和内容
ls -la /www/wwwroot/sc.xiaoxinglai.com/wp-config.php
cat /www/wwwroot/sc.xiaoxinglai.com/wp-config.php | head -20

确保数据库连接信息正确:

php
define('DB_NAME', '数据库名');
define('DB_USER', '数据库用户');
define('DB_PASSWORD', '密码');
define('DB_HOST', 'localhost');

2. 检查数据库连接

bash
# 测试 MySQL 连接
mysql -u WordPress用户名 -pWordPress密码 -h localhost

如果能连接,检查 WordPress 数据库是否存在:

sql
SHOW DATABASES;
USE WordPress数据库名;
SHOW TABLES;

3. 修复文件权限

bash
cd /www/wwwroot/sc.xiaoxinglai.com

# 设置正确权限
find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
chmod 600 wp-config.php
chown -R www-data:www-data .  # 或 nginx:nginx / apache:apache

🚨 第四步:常见问题排查

问题1:空白页面(白屏)

可能是内存不足或致命错误被隐藏:

  1. 在 wp-config.php 中开启调试

php
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
  1. 检查 PHP 内存限制

php
define('WP_MEMORY_LIMIT', '256M');

问题2:数据库连接错误

  1. 检查数据库服务状态

bash
systemctl status mysql
# 或
systemctl status mariadb
  1. 修复数据库表

bash
# 使用 wp-cli
wp db repair

问题3:.htaccess 问题

重新生成 .htaccess:

bash
cd /www/wwwroot/sc.xiaoxinglai.com
rm -f .htaccess
echo "# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress" > .htaccess

🔧 第五步:分步排除法

1. 禁用所有插件

bash
cd /www/wwwroot/sc.xiaoxinglai.com/wp-content
mv plugins plugins-old
mkdir plugins

2. 使用默认主题

bash
cd /www/wwwroot/sc.xiaoxinglai.com/wp-content/themes
mv dux dux-old
# 确保有默认主题(如 twentytwentythree)

3. 创建最小化测试

创建一个最简单的 WordPress 测试文件:

bash
cat > /www/wwwroot/sc.xiaoxinglai.com/test-wordpress.php << 'EOF'
<?php
define('WP_USE_THEMES', false);
require('./wp-load.php');
echo '<h1>WordPress加载成功!</h1>';
echo '数据库连接: ' . (defined('DB_NAME') ? '正常' : '失败');
?>
EOF

访问 http://sc.xiaoxinglai.com/test-wordpress.php


📊 第六步:使用命令行诊断

1. 检查 WordPress 安装

bash
cd /www/wwwroot/sc.xiaoxinglai.com

# 检查 WordPress 核心文件
ls -la wp-admin/ wp-includes/ wp-*.php

# 使用 wp-cli 检查
wp core verify-checksums

2. 查看当前错误

bash
# 实时查看错误
tail -f /var/log/nginx/error.log -f /var/log/php8.2-fpm.log

🎯 请立即执行以下命令并提供结果

bash
# 1. 查看当前服务状态
systemctl status nginx php8.2-fpm mysql --no-pager

# 2. 查看错误日志最后10行
tail -10 /var/log/nginx/error.log

# 3. 测试 PHP 执行
cd /www/wwwroot/sc.xiaoxinglai.com
echo "<?php phpinfo(); ?>" > info.php
# 然后访问 http://sc.xiaoxinglai.com/info.php

# 4. 检查文件所有权
ls -la /www/wwwroot/sc.xiaoxinglai.com/ | head -20

💡 快速解决方案(如果以上都太麻烦)

方案A:重置 WordPress

  1. 备份数据库

  2. 重新上传 WordPress 核心文件(不覆盖 wp-content 和 wp-config.php)

  3. 重新安装

方案B:回滚到 PHP 7.4

如果问题由 PHP 8.2 引起,先切换回 PHP 7.4:

bash
# 宝塔面板操作
1. 进入"软件商店"
2. 安装 PHP 7.4
3. 在网站设置中选择 PHP 7.4
4. 卸载 PHP 8.2

方案C:全新安装

如果时间紧急:

  1. 在新目录安装全新 WordPress

  2. 导入数据库

  3. 测试是否正常

  4. 再排查原安装问题

赞(0)
未经允许不得转载:肖兴来个人博客 » 同域名不同服务器网站搬家教程
分享到: 更多 (0)

评论 抢沙发

换一个
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址