Đang tải...

Hướng Dẫn Di Chuyển Website Laravel Sang VPS Mới Bằng Rsync

Công nghệ
ảnh thumbnail bài viết

Hướng Dẫn Di Chuyển Website Laravel Sang VPS Mới Bằng Rsync

Việc chuyển website Laravel sang một VPS mới có thể trở nên đơn giản và an toàn nếu bạn sử dụng đúng công cụ. Trong số các công cụ phổ biến, rsync được đánh giá cao về tốc độ và bảo toàn quyền hạn file. Bài viết này hướng dẫn bạn cách sử dụng rsync để chuyển web Laravel hiệu quả.

I. Chuẩn Bị Trước Khi Di Chuyển

  • Đảm bảo bạn có quyền truy cập SSH vào cả VPS cũ và VPS mới.
  • Website Laravel nên đặt ở chế độ bảo trì để tránh thay đổi dữ liệu trong quá trình chuyển.
  • Đảm bảo VPS mới đã cài đặt sẵn môi trường PHP, Composer và các extension cần thiết cho Laravel.

II. Cách Sử Dụng Rsync Để Chuyển Dữ Liệu

1. Câu Lệnh Rsync Cơ Bản

rsync -avz --progress /duong_dan_goc/ username@ip_vps_moi:/duong_dan_dich/
  • -a: chuyển toàn bộ file (và cả quyền hạn, symlink,...)
  • -v: hiển thị quá trình chuyển
  • -z: nén file khi chuyển
  • --progress: hiện thông tin tiến trình

2. Thực Hiện Chuyển Thư Mục Dự Án Laravel

Ví dụ:

# Trên VPS cũ, chạy:
rsync -avz --progress /var/www/html/laravel_project/ root@123.123.123.123:/var/www/html/laravel_project/

Lưu ý:

  • Thay root bằng username SSH của bạn trên VPS mới
  • Thay 123.123.123.123 bằng IP của VPS mới
  • Đảm bảo thư mục đích đã tồn tại hoặc tạo trước khi rsync

III. Chuyển Database

Laravel chủ yếu dùng MySQL hoặc MariaDB. Hãy export database bằng mysqldump rồi import vào VPS mới.

# Trên VPS cũ:
mysqldump -u username -p database_laravel > backup.sql

# Chuyển file backup.sql sang VPS mới bằng rsync:
rsync -avz backup.sql root@ip_vps_moi:/duong_dan_dich/

# Trên VPS mới, import lại:
mysql -u username -p database_laravel < backup.sql

IV. Cấu Hình Và Hoạt Động Sau Khi Chuyển

  1. Cập nhật file .env trong dự án Laravel để phù hợp cấu hình VPS mới (DB_HOST, DB_USERNAME, DB_PASSWORD,...).
  2. Chạy lại các lệnh:
composer install --optimize-autoloader --no-dev
php artisan migrate
php artisan config:cache
php artisan route:cache
php artisan storage:link  # nếu cần
  1. Phân quyền lại cho thư mục storagebootstrap/cache:
sudo chown -R www-data:www-data storage bootstrap/cache
sudo chmod -R 775 storage bootstrap/cache
  1. Kiểm tra hoạt động website và đảm bảo mọi thứ đã chạy ổn định.

V. Một Số Lưu Ý Khi Sử Dụng Rsync

  • Không nên rsync thư mục vendor mà nên cài lại Composer trên VPS mới cho sạch sẽ.
  • Nếu dữ liệu lớn, nên rsync vào thời điểm ít traffic.
  • Có thể sử dụng --delete để xóa file ở VPS mới không còn ở VPS cũ (dùng thận trọng).
  • Nên sử dụng SSH key để tăng bảo mật và thuận tiện thao tác tự động.

Kết Luận

Việc di chuyển website Laravel bằng rsync giúp tiết kiệm thời gian, đảm bảo toàn vẹn dữ liệu và giảm thiểu khả năng lỗi so với việc chuyển thủ công hoặc nén/giải nén file truyền thống. Hãy kiểm tra kỹ cấu hình, backup đầy đủ trước mỗi lần chuyển để đảm bảo an toàn cho dự án của bạn.