Cách cài đặt Laravel 5 PHP Framework với Nginx trên Ubuntu 16.04 LTS

theanh

Administrator
Nhân viên
Laravel là một framework PHP mã nguồn mở và miễn phí với 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.4 đ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, chúng 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.4 với Nginx làm máy chủ web, PHP-FPM 7.0 và MariaDB. Laravel 5.4 sẽ chạy trên LEMP stack với Ubuntu 16.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.

Chúng ta sẽ làm gì
  1. Cập nhật Ubuntu
  2. Cài đặt Nginx
  3. Cài đặt PHP-FPM 7.0
  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 16.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 [emailprotected]
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-get update
sudo apt-get 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.10 trong hệ thống. Nó có sẵn trong kho lưu trữ, bạn chỉ cần cài đặt nó bằng lệnh apt sau.
Mã:
sudo apt-get install -y nginx
Sau khi quá trình cài đặt hoàn tất, hãy khởi động Nginx và cho phép nó tự động khởi động khi khởi động hệ thống, bạn có thể thực hiện việc này bằng các lệnh systemctl sau.
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 theo cách sau.
Mã:
netstat -plntu


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

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

Nginx đã được cài đặt và bây giờ chúng ta cần cài đặt phiên bản PHP-FPM trên hệ thống. Chúng ta sẽ cài đặt PHP 7.0 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.0 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-get install -y php7.0 php7.0-curl php7.0-common php7.0-cli php7.0-mysql php7.0-mbstring php7.0-fpm php7.0-xml php7.0-zip
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.0/
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 chạy khi khởi động hệ thống.
Mã:
systemctl start php7.0-fpm
systemctl enable php7.0-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.0-fpm
PHP và PHP-FPM 7.0 đã được cài đặt.


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 điều 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.0 vào hệ thống.

Cài đặt MariaDB từ kho lưu trữ bằng lệnh sau.
Mã:
sudo apt-get install -y mariadb-server mariadb-client
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] Y
 Xóa người dùng ẩn danh? [Y/n] Y
 Không cho phép đăng nhập root từ xa? [Y/n] Y
 Xóa cơ sở dữ liệu thử nghiệm và quyền truy cập vào cơ sở dữ liệu đó? [Y/n] Y
 Tả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 16.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-get install -y composer
Sau khi quá trình 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 16.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 dự án Laravel
 root /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:/var/run/php/php7.0-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 cho laravel đã được tạo. Bây giờ hãy khởi động lại nginx.
Mã:
systemctl restart nginx

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

Trước khi chúng ta bắt đầu cài đặt Laravel, hãy đảm bảo tiện ích unzip đã đượ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-get install unzip
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.4 thông qua dự án composer create.

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



Và sau khi quá trình cài đặt 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
Quá trình 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 ta đã đã đị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ủ của Laravel.



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

Tài liệu tham khảo​

 
Back
Bên trên