Cách upload Laravel lên hosting cPanel chính xác nhất

Hướng dẫn chi tiết cách upload Laravel lên hosting cPanel một cách nhanh chóng và chính xác nhất.

Bước 1: Nén code

Nén lại toàn bộ code dưới dạng file zip để có thể upload lên hosting một cách nhanh chóng. Tuy nhiên trước khi nén code, bạn cần xóa toàn bộ cache của Laravel bằng lệnh sau:

php artisan cache:clear
php artisan view:clear
clear cache

Cách upload Laravel lên hosting cPanel chính xác nhất (1)

Sau khi đã xóa cache các bạn tiến hành nén lại code dưới dạng file zip bằng Winrar.

Lưu ý:

  • Đối với các bạn có sử dụng git thì khi nén bỏ qua không nén thư mục .git
  • Nếu bạn sử dụng Phpstorm để code thì bỏ qua không nén thư mục .idea

Cách upload Laravel lên hosting cPanel chính xác nhất (2)

Cách upload Laravel lên hosting cPanel chính xác nhất (3)

Bước 2: Xuất database

Sau khi đã nén code các bạn sẽ cần xuất ra database để import lên hosting. Nếu các bạn đang sử dụng các phần mềm Localhost như Xampp, Laragon thì có thể sử dụng Phpmyadmin để xuất database ra dưới dạng file .sql

Cách upload Laravel lên hosting cPanel chính xác nhất (4)

Sau khi xuất các bạn sẽ nhận được một file có dạng tên-database.sql dùng để import lên hosting ở các bước sau

Cách upload Laravel lên hosting cPanel chính xác nhất (5)

 

Bước 3: Upload code lên hosting

Để upload code lên hosting các bạn đăng nhập vào cPanel -> Filemanger

Cách upload Laravel lên hosting cPanel chính xác nhất (6)

Tiếp theo các bạn cần xác định thư mục sẽ chứa mã nguồn. Nếu tên miền các bạn muốn sử dụng là tên miền chính (Tên miền sử dụng khi đăng ký hosting) thì thư mục cần upload code lên sẽ là public_html. Trường hợp tên miền của bạn là addon domain hoặc subdomain thì thư mục cần upload sẽ là thư mục có tên giống với addon domain hoặc subdomain.

Cách upload Laravel lên hosting cPanel chính xác nhất (7)

Sau khi đã xác định được thư mục cần upload mã nguồn các bạn click vào thư mục sau đó chọn Upload -> Chọn Select file và chọn đến file zip đã nén. Sau khi quá trình upload hoàn tất hãy click vào Go back to để trở lại thư mục chứa mã nguồn

Cách upload Laravel lên hosting cPanel chính xác nhất (8)

Tiếp theo hãy click chuột phải vào file zip và chọn Extract để giải nén

Cách upload Laravel lên hosting cPanel chính xác nhất (9)

Cách upload Laravel lên hosting cPanel chính xác nhất (11)

Sau khi giải nén xong đừng quên xóa file zip mà các bạn đã upload lên

Cách upload Laravel lên hosting cPanel chính xác nhất (12)

Cách upload Laravel lên hosting cPanel chính xác nhất (13)

Bước 4: Tạo database, user Mysql và import Database

Để tạo database, user Mysql cũng như cấp quyền cho user các bạn có thể làm theo hướng dẫn sau: https://blog.kdata.vn/cach-tao-database-user-quan-ly-va-phan-quyen-trong-cpanel-3927/

Sau khi đã tạo Database các bạn truy cập vào Phpmyadmin và chọn database để import database đã Export ở buớc 2

Cách upload Laravel lên hosting cPanel chính xác nhất (14)

Cách upload Laravel lên hosting cPanel chính xác nhất (15)

Cách upload Laravel lên hosting cPanel chính xác nhất (16)

Bước 5: Cấu hình kết nối database trong file .env

Trước tên để có thể xem và chỉnh sửa file .env, bạn cần bật hiển thì file ẩn

Cách upload Laravel lên hosting cPanel chính xác nhất (17)

Sau khi đã tạo database, user, import database các bạn tiến hành cấu hình kết nối database trong file .env. Click chuột phải vào file .env và chọn Edit

Cách upload Laravel lên hosting cPanel chính xác nhất (18)

Cách upload Laravel lên hosting cPanel chính xác nhất (19)

Tại đây các bạn cần sửa một số thông tin sau

  • APP_DEBUG : Sửa true thành false
  • APP_URL : điền domain website theo dạng http://domain.com hoặc https://domain.com nếu dùng SSL
  • DB_DATABASE : Điền tên database đã tạo ở bước 4
  • DB_USERNAME : Điền User Mysql đã tạo ở bước 4
  • DB_PASSWORD : Điền mật khẩu User Mysql đã tạo ở bước 4

Cách upload Laravel lên hosting cPanel chính xác nhất (20)

Bước 6: Loại bỏ public khỏi Url

Theo mặc định của Laravel tất cả các request sẽ đi vào thư mục public nên trong Url sẽ có thêm /public.

Cách upload Laravel lên hosting cPanel chính xác nhất (21)

Để loại bỏ /public khỏi Url các bạn tạo file .htaccess ngang hàng thư mục public với nội dung sau

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/public/
RewriteRule ^(.*)$ /public/$1 [L,QSA]
</IfModule>

Cách upload Laravel lên hosting cPanel chính xác nhất (22)

Cách upload Laravel lên hosting cPanel chính xác nhất (23)

Cách upload Laravel lên hosting cPanel chính xác nhất (24)

Bước 7: Thiết lập Cronjob

Trong trường hợp các bạn sử dụng queue work của Laravel thì sẽ cần cấu hình Cronjob trên hosting để có thể hoạt động. Truy cập cPanel -> Cron Jobs để cấu hình Cron

Cách upload Laravel lên hosting cPanel chính xác nhất (25)

Tại đây các bạn cấu hình cronjob tương tự như sau

Cách upload Laravel lên hosting cPanel chính xác nhất (26)

Cách upload Laravel lên hosting cPanel chính xác nhất (27)

/usr/local/bin/php /home/support1/public_html/artisan queue:work --sleep=1 --tries=3 --timeout=120 >/dev/null 2>&1

Trong đó:

  • /home/support1/public_html/ : Đường dẫn đến thư mục chứa code
  • >/dev/null 2>&1 : Không spam mail mỗi khi chạy cronjob

Bước 8: Một số lưu ý

Sau khi upload code lên các bạn cần đảm bảo chmod của thư mục là 0755 và chmod của file là 0644 nếu không sẽ gặp lỗi 403.

Trường hợp gặp lỗi 500 hãy kiểm tra lại phiên bản PHP trên hosting và kết nối Mysql xem có chính xác hay không. Đối với Laravel 5.6 trở lên hãy sử dụng PHP 7 để cho hiệu suất tốt nhất.

Chúc các bạn upload Laravel lên hosting cPanel thành công!

Nguồn: blog.hostvn