Cách cài đặt Laravel 5.6 PHP Framework với Nginx trên Ubuntu 18.04

theanh

Administrator
Nhân viên
Laravel là một framework PHP miễn phí và mã nguồn mở, triển khai mô hình thiết kế MVC (Model-View-Controller). Được Taylor Otwell tạo ra vào năm 2011, đây là nỗ lực cung cấp một giải pháp thay thế nâng cao cho framework CodeIgniter (CI). Vào năm 2011, Laravel đã phát hành phiên bản 1 và phiên bản 2, và phiên bản mới nhất 5.6 đi kèm với nhiều tính năng được cải tiến hơn như hỗ trợ Dòng lệnh (CLI) có tên là 'artisan', hỗ trợ cho các hệ thống cơ sở dữ liệu khác nhau, cải tiến Route, v.v.

Trong hướng dẫn này, tôi sẽ hướng dẫn bạn từng bước về cách cài đặt Laravel phiên bản 5.6 với Nginx làm máy chủ web, PHP-FPM 7.2 và MariaDB. Laravel 5.6 sẽ chạy trên LEMP stack với Ubuntu 18.04 là phiên bản hệ điều hành.

Cũng có phiên bản hướng dẫn này dành cho Laravel trên CentOS 7.

Những việc chúng ta sẽ làm​

  1. Cập nhật Ubuntu Repository
  2. Cài đặt Nginx
  3. Cài đặt PHP-FPM 7.2
  4. Cài đặt MariaDB
  5. Cài đặt PHP Composer
  6. Cấu hình Nginx Virtual Host cho Laravel
  7. Cài đặt Laravel
  8. Kiểm tra

Điều kiện tiên quyết​

  • Máy chủ Ubuntu 18.04
  • Quyền root

Bước 1 - Cập nhật Ubuntu​

Trước khi bắt đầu cài đặt, chúng ta cần cập nhật kho lưu trữ và sau đó cập nhật tất cả các gói lên phiên bản mới nhất. Để thực hiện điều đó, trước tiên hãy đăng nhập vào máy chủ Ubuntu bằng ssh.
Mã:
ssh root@ip
Bây giờ, hãy cập nhật kho lưu trữ Ubuntu của bạn và nâng cấp tất cả các gói trên hệ thống của bạn lên phiên bản mới nhất.
Mã:
sudo apt update
sudo apt upgrade
Khởi động lại máy chủ của bạn và sau đó kết nối lại bằng ssh.

Bước 2 - Cài đặt Nginx​

Trong bước này, chúng ta sẽ cài đặt Nginx 1.14 vào hệ thống. Nó có sẵn trên kho lưu trữ Ubuntu mặc định, bạn chỉ cần cài đặt nó bằng lệnh apt sau.
Mã:
sudo apt install nginx -y
Sau khi cài đặt hoàn tất, hãy khởi động dịch vụ nginx và thêm nó để tự động khởi động khi khởi động hệ thống bằng lệnh systemctl.
Mã:
systemctl start nginx
systemctl enable nginx
Nginx đang chạy trên cổng 80, hãy kiểm tra số liệu thống kê liên quan bằng lệnh netstat.
Mã:
netstat -plntu


Hoặc bạn cũng có thể sử dụng lệnh curl.
Mã:
curl -I localhost

Bước 3 - Cài đặt PHP 7.2 và PHP-FPM​

Nginx đã được cài đặt và bây giờ chúng ta cần cài đặt phiên bản PHP-FPM 7 trên hệ thống. Chúng ta sẽ cài đặt PHP 7.2 và một số tiện ích mở rộng PHP cần thiết cho Laravel.

Cài đặt PHP và PHP-FPM 7.2 với tất cả các tiện ích mở rộng cần thiết bằng lệnh sau.
Mã:
sudo apt install php7.2 php7.2-curl php7.2-common php7.2-cli php7.2-mysql php7.2-mbstring php7.2-fpm php7.2-xml php7.2-zip -y
Tiếp theo, hãy đến thư mục cấu hình PHP và chỉnh sửa tệp php.ini có trong thư mục fpm.
Mã:
cd /etc/php/7.2/
vim fpm/php.ini
Bỏ chú thích dòng CGI sau và đổi giá trị thành 0.
Mã:
cgi.fix_pathinfo=0
Vậy là xong. Lưu và thoát.

Bây giờ chúng ta có thể khởi động PHP-FPM và cho phép nó tự động khởi động khi khởi động hệ thống.
Mã:
systemctl start php7.2-fpm
systemctl enable php7.2-fpm
Theo mặc định trên Ubuntu, PHP-FPM chạy dưới tệp sock. Kiểm tra tệp sock PHP-FPM bằng lệnh netstat theo cách sau:
Mã:
netstat -pl | grep php7.2-fpm


PHP và PHP-FPM 7.2 đã được cài đặt trên hệ thống Ubuntu 18.04.

Bước 4 - Cài đặt MariaDB​

Đây là tùy chọn, nhưng khi dự án Laravel của bạn dựa trên MySQL, bạn cần thực hiện thao tác này cho dự án của mình. Chúng tôi sẽ cài đặt MariaDB phiên bản mới nhất 10.1 vào hệ thống.

Cài đặt MariaDB từ kho lưu trữ bằng lệnh sau.
Mã:
sudo apt install mariadb-server mariadb-client -y
Sau khi cài đặt hoàn tất, hãy chạy MariaDB và cho phép khởi chạy khi khởi động hệ thống.
Mã:
systemcl start mysql
systemctl enable mysql
MariaDB đã khởi động trên cổng 3306, hãy kiểm tra bằng lệnh netstat.
Mã:
netstat -plntu


Tiếp theo, cấu hình mật khẩu gốc MariaDB bằng lệnh 'mysql_secure_installation' bên dưới.
Mã:
mysql_secure_installation
Nhập mật khẩu gốc của bạn, xóa người dùng ẩn danh, không cho phép đăng nhập gốc từ xa, v.v.
Mã:
Đặt mật khẩu gốc? [Y/n] YXóa người dùng ẩn danh? [Y/n] YKhông cho phép đăng nhập root từ xa? [Y/n] YXóa cơ sở dữ liệu thử nghiệm và quyền truy cập vào cơ sở dữ liệu đó? [Y/n] YTải lại bảng đặc quyền ngay bây giờ? [Y/n] Y
Cài đặt và cấu hình MariaDB đã hoàn tất.

Bước 5 - Cài đặt PHP Composer​

Composer là trình quản lý gói cho ngôn ngữ lập trình PHP. Được tạo ra vào năm 2011, nó lấy cảm hứng từ 'npm' của Node.js và 'bundler' của Ruby. Trên Ubuntu 18.04, composer có sẵn trong kho lưu trữ, vì vậy chúng ta có thể cài đặt nó bằng lệnh apt.

Cài đặt PHP Composer bằng lệnh sau.
Mã:
sudo apt install composer -y
Sau khi cài đặt hoàn tất, hãy chạy lệnh 'composer' và bạn sẽ nhận được kết quả như trong ảnh chụp màn hình.
Mã:
composer


PHP Composer được cài đặt trên Ubuntu 18.04.

Bước 6 - Cấu hình máy chủ ảo Nginx cho Laravel​

Trong bước này, chúng ta sẽ cấu hình máy chủ ảo nginx cho Laravel. Nhưng trước khi thực hiện, chúng ta phải quyết định thư mục cho dự án Laravel của mình. Trong trường hợp của chúng tôi, chúng tôi sẽ sử dụng thư mục '/var/www/laravel' cho dự án. Chỉ cần tạo nó bằng mkdir.
Mã:
mkdir -p /var/www/laravel
Tiếp theo, hãy đến thư mục cấu hình nginx và tạo một tệp máy chủ ảo mới 'laravel' trong thư mục 'sites-available'.
Mã:
cd /etc/nginx/
vim sites-available/laravel
Dán cấu hình sau vào đó.
Mã:
server { listen 80; listen [::]:80 ipv6only=on; # Tệp nhật ký để gỡ lỗi access_log /var/log/nginx/laravel-access.log; error_log /var/log/nginx/laravel-error.log; # Thư mục Webroot cho gốc dự án Laravel /var/www/laravel/public; index index.php index.html index.htm; # Tên miền của bạn server_name laravel.hakase-labs.co; location / { try_files $uri $uri/ /index.php?$query_string; } # Cấu hình PHP-FPM Nginx location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/run/php/php7.2-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
Vậy là xong. Lưu và thoát.

Bây giờ hãy kích hoạt máy chủ ảo bằng cách tạo liên kết tượng trưng của tệp 'laravel' tới thư mục 'sites-enabled'.

Sau đó, hãy kiểm tra cấu hình nginx và đảm bảo không có lỗi nào.
Mã:
ln -s /etc/nginx/sites-available/laravel /etc/nginx/sites-enabled/
nginx -t
Máy chủ ảo Nginx cho Laravel đã được tạo, bây giờ hãy khởi động lại dịch vụ nginx.
Mã:
systemctl restart nginx

Bước 7 - Cài đặt Laravel​

Trước khi bắt đầu cài đặt Laravel, hãy đảm bảo rằng tiện ích giải nén đã được cài đặt trên hệ thống của bạn. Nếu bạn không có công cụ này, hãy cài đặt nó bằng lệnh sau.
Mã:
sudo apt install unzip -y
Chúng tôi đã định nghĩa một thư mục cho Laravel: thư mục '/var/www/laravel'. Hãy vào thư mục đó.
Mã:
cd /var/www/laravel
Cài đặt Laravel bằng lệnh composer. Có hai cách để cài đặt Laravel: Cài đặt thông qua Laravel Installer và Cài đặt thông qua Composer create project.

Chúng ta sẽ cài đặt phiên bản Laravel mới nhất 5.6 thông qua composer create project.

Chạy lệnh composer sau.
Mã:
composer create-project laravel/laravel .
Bạn cần đợi Laravel cài đặt.



Cài đặt Laravel hoàn tất.



Chúng ta cần thay đổi quyền sở hữu thư mục dự án Laravel thành người dùng 'www-data' và thay đổi quyền của thư mục lưu trữ thành 755.
Mã:
chown -R www-data:root /var/www/laravel
chmod 755 /var/www/laravel/storage
Cài đặt Laravel đã hoàn tất mà không có bất kỳ lỗi nào.

Bước 8 - Kiểm tra​

Trong tệp cấu hình máy chủ ảo, chúng tôi đã định nghĩa tên miền cho Laravel 'laravel.hakase-labs.co'.

Mở trình duyệt web của bạn và truy cập tên miền bạn đã cài đặt Laravel, tên miền của tôi ở đây trên máy chủ thử nghiệm là .

Và bạn sẽ thấy trang chủ Laravel.



Cài đặt Laravel với Nginx, PHP-FPM 7.2 và MariaDB trên Ubuntu 18.04 đã thành công.

Tài liệu tham khảo​

 
Back
Bên trên