如何在Ubuntu上迁移LNMP站点
导读:如何在Ubuntu上迁移LNMP站点 迁移LNMP(Linux+NGINX+MySQL+PHP)站点至Ubuntu服务器,需围绕数据备份-环境重建-数据恢复-配置调整四大核心步骤展开,确保站点在新环境中稳定运行。 一、迁移前准备:备份原服务...
如何在Ubuntu上迁移LNMP站点
迁移LNMP(Linux+NGINX+MySQL+PHP)站点至Ubuntu服务器,需围绕数据备份-环境重建-数据恢复-配置调整四大核心步骤展开,确保站点在新环境中稳定运行。
一、迁移前准备:备份原服务器数据
迁移前需完整备份原服务器的网站文件、数据库、Nginx配置,避免数据丢失。
- 备份网站文件:使用
tar命令压缩站点根目录(如/var/www/html或自定义路径),例如:sudo tar -czvf site_files.tar.gz /var/www/html - 备份数据库:通过
mysqldump导出所有数据库(含表结构和数据),例如:sudo mysqldump -u root -p --all-databases > all_databases.sql - 备份Nginx配置:复制Nginx配置目录(
/etc/nginx)至备份路径,例如:sudo cp -r /etc/nginx /etc/nginx_backup - 备份PHP配置:若修改过PHP配置(如
php.ini),需备份/etc/php/目录(如php7.4-fpm或对应版本)。
二、Ubuntu服务器环境搭建
在目标Ubuntu服务器上安装与原环境一致的LNMP组件(版本差异可能导致兼容性问题)。
- 更新系统:
sudo apt update & & sudo apt upgrade -y - 安装Nginx:
sudo apt install nginx -y - 安装MySQL:
sudo apt install mysql-server -y sudo mysql_secure_installation # 执行安全配置(设置root密码、移除匿名用户等) - 安装PHP及扩展:根据原环境版本安装PHP(如PHP 7.4/8.1)及常用扩展(
php-mysql、php-fpm、php-curl等):sudo apt install php7.4-fpm php7.4-mysql php7.4-curl -y - 启动服务并设置开机自启:
sudo systemctl start nginx mysql php7.4-fpm sudo systemctl enable nginx mysql php7.4-fpm
三、恢复数据至新服务器
将备份的文件、数据库导入新服务器,恢复站点基础数据。
- 恢复网站文件:将备份的
site_files.tar.gz上传至新服务器(如/var/www/new_site),解压并设置权限:sudo tar -xzvf site_files.tar.gz -C /var/www/new_site sudo chown -R www-data:www-data /var/www/new_site # 设置所有者为www-data(Nginx默认用户) sudo chmod -R 755 /var/www/new_site # 设置目录权限 - 恢复数据库:导入备份的
all_databases.sql文件,若数据库用户/密码变更,需同步修改:mysql -u root -p < all_databases.sql - 恢复Nginx配置:将备份的
/etc/nginx_backup目录复制至/etc/nginx,覆盖原有配置:sudo cp -r /etc/nginx_backup/* /etc/nginx/ - 恢复PHP配置:若修改过
php.ini,将备份的php.ini复制至对应版本目录(如/etc/php/7.4/fpm/php.ini),并重启PHP-FPM:sudo systemctl restart php7.4-fpm
四、配置Nginx与验证
调整Nginx配置以适配新站点,并验证站点是否正常运行。
- 检查Nginx配置语法:
若输出sudo nginx -tsyntax is ok,说明配置无错误。 - 重启Nginx:
sudo systemctl restart nginx - 配置域名解析:将站点域名指向新服务器IP(通过DNS提供商修改A记录),等待解析生效(通常几分钟至几小时)。
- 验证站点访问:在浏览器输入站点域名,检查页面是否正常加载;查看Nginx日志(
/var/log/nginx/error.log)排查潜在错误。
五、常见问题排查
- 404错误:检查Nginx配置中的
root路径是否指向正确站点目录,或index指令是否包含index.php。 - 502 Bad Gateway:确认PHP-FPM服务是否运行(
sudo systemctl status php7.4-fpm),或Nginx配置中的fastcgi_pass指令是否指向正确的PHP-FPM套接字(如unix:/var/run/php/php7.4-fpm.sock)。 - 数据库连接失败:检查站点配置文件(如
wp-config.php或config.php)中的数据库用户名、密码、数据库名是否与恢复的数据库一致,或MySQL服务是否允许远程连接(若需)。
通过以上步骤,即可完成Ubuntu服务器上LNMP站点的迁移。迁移后建议定期备份数据(如使用cron设置每日备份),确保站点数据安全。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何在Ubuntu上迁移LNMP站点
本文地址: https://pptw.com/jishu/735351.html
