Trong bài viết này, mình sẽ hướng dẫn cách deploy project Laravel lên máy chủ VPS sử dụng Vestacp.
Gioi thiệu sơ qua về Vestacp – là một Panel hoàn toàn miễn phí, dễ cài đặt và sử dụng, ngoài ra còn tích hợp khá nhiều chức năng như Firewall, Auto SSL, DNS, Cron Job… không kém gì các Panel trả tiền khác như Cpanel, Plesk hay Webmin…
Chuẩn bị VPS
Hiện tại mình đang sử dụng VPS của Vultr thấy khá ổn định, giá cả cũng rẻ hơn một số VPS ở Việt Nam. Ở đây, mình sẽ chọn hệ điều hành là Ubuntu 20.04 LTS
Dưới đây là một số cấu hình cho các bạn lựa chọn
Cài đặt Vestacp
Sau khi kết nối SSH với VPS, bạn gõ lệnh sau để tải và cài đặt Vestacp, lưu ý là chạy với quyền root nhé:
curl -O http://vestacp.com/pub/vst-install.sh
bash vst-install.sh --force
Sau đó sẽ có màn hình setup hiện ra:
Bạn sẽ cần cung cấp thông tin như email, domain default để Vestacp tiến hành setup cấu hình.
Bạn có thể vào địa chỉ http://xx.xx.xx.xx:8083 (xx.xx.xx.xx là IP máy chủ VPS) để login vào Vestacp.
Ten ten, đây là giao diện Vestacp khi cài đặt thành công
Cấu hình Nginx
Khi cài đặt thành công Vestacp, thì bạn sẽ được cấp 1 tài khoản mặc định là “Admin”. Bạn cũng có thể sử dụng tài khoản Vestacp để truy cập SSH vào VPS bằng câu lệnh
ssh admin@xxx.xxx.xxx
Tiếp theo, để cấu hình Nginx trỏ về thư mục pulbic trong Laravel :
nano /home/$user/conf/web/$domain.nginx.conf
$use , $domain lần lượt là tên user và domain website.
server {
listen xxx.xxx.xxx.xxx:80;
...
root /home/user/web/domain.xyz/public_html/public;
...
location / {
try_files $uri $uri/ /index.php?$query_string;
location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ {
expires max;
}
...
A. Thêm public sau public_html
B. Thêm try_files $uri $uri/ /index.php?$query_string;
sau location/
C. Bấm Ctrl + X , sau đó Y để lưu file. Cuối cùng dùng câu lệnh sau để restart Nginx :
sudo systemctl reload nginx
Deploy Laravel
Vào thư mục public_html để pull project về từ Git
cd ./web/domain/public_html
sudo git clone -b 6.x https://github.com/laravel/laravel.git
mv laravel/* web/domain/public_html
Sau đó rename file .env.example thành file .env. Chỉnh sửa cấu hình database.
Thử chạy project bằng địa chỉ ip của bạn
Nếu ra được đến bước này thì chúc mừng bạn. Bạn đã cài đặt thành công Laravel lên VPS chạy Vestacp rồi !!
Tóm lại
Tóm lại, Vestacp là một Panel khá là đơn giản, dễ cài đặt và sử dụng. Việc deploy một ứng dụng hoặc website lên VPS cũng không khó khăn gì, mình nghĩ quan trọng nhất là phần cấu hình DocumentRoot của Nginx để trỏ về thư mục public của Laravel.
Chúc các bạn thành công !
Bài viết này được tham khảo từ:
- https://vestacp.com/install/
- https://medium.com/@viriyahlangkaviket/deploy-laravel-on-vestacp-php-fpm-nginx-on-ubuntu-16-04-4f88103e3835
Để lại một bình luận