Chúng tôi đã nói về việc cài đặt Laravel cho máy chủ Ubuntu dựa trên Apache trong hướng dẫn trước. Hướng dẫn này sẽ chỉ cho bạn cách cài đặt Laravel PHP framework trên máy chủ Nginx.
Hướng dẫn này dựa trên giả định rằng bạn đã thiết lập máy chủ dựa trên Ubuntu. Ngoài ra, hãy đảm bảo rằng bạn đã cài đặt Git. Nếu không, bạn có thể làm theo hướng dẫn của chúng tôi để thực hiện.
Sau khi hoàn tất, bây giờ chúng ta phải cho Nginx biết đây là nơi trang web của chúng ta sẽ hoạt động. Để làm được điều đó, chúng ta cần tạo một mục virtualhost trong Nginx. Nginx lưu trữ cấu hình mặc định trong một tệp có tên default tại /etc/nginx/sites-available/default. Hãy sao chép nó và tạo phiên bản tệp của riêng chúng ta.
Hãy chỉnh sửa tệp cấu hình
Bạn sẽ thấy nội dung tương tự như
Tôi đã xóa các bình luận vì mục đích dễ đọc. Bạn sẽ cần thay đổi vị trí gốc, trong trường hợp của chúng tôi sẽ là /var/www/html/laravel/public. Bạn cũng cần phải thay đổi biến server_name thành tên miền bạn sẽ sử dụng hoặc địa chỉ IP của máy chủ của bạn.
Chỉnh sửa tệp để trông giống như sau
Lưu tệp sau khi chỉnh sửa. Bây giờ chúng ta cần bật tệp cấu hình này. Cho đến nay chỉ có cấu hình mặc định đang hoạt động. Để thực hiện, chúng ta cần tạo liên kết tượng trưng đến tệp laravel trong thư mục /etc/nginx/sites-enabled. Chúng ta cũng cần tắt cấu hình mặc định để nó không ảnh hưởng đến quá trình cài đặt laravel của chúng ta.
Cấu hình máy chủ Nginx của chúng ta đã hoàn tất. Bước tiếp theo là cấu hình PHP-FPM.
Tìm văn bản sau trong đó
Bỏ chú thích cho biến bằng cách xóa ; ở phía trước và thay đổi giá trị của nó thành 1 sao cho trông giống như
Điều này yêu cầu PHP không thực thi một tập lệnh có tên tương tự nếu không tìm thấy tập lệnh gốc, điều này rất quan trọng xét về mặt bảo mật.
Cuối cùng, chúng ta cũng cần kích hoạt tiện ích mở rộng mcrypt mà chúng ta đã cài đặt trước đó.
Vậy là xong. Bây giờ chỉ cần khởi động lại dịch vụ PHP-FPM để tải các thay đổi.
Tải xuống Composer. Trước tiên, hãy đảm bảo bạn đang ở trong thư mục gốc của mình.
Lệnh này sẽ tải xuống tệp composer.phar trong thư mục gốc của bạn. Bây giờ nếu bạn muốn, bạn có thể chạy nó từ đây bằng cách sử dụng lệnh nào đó như php composer.phar [command] nhưng vì chúng ta muốn chạy composer trên toàn cục nên chúng ta cần chuyển nó đến một vị trí thích hợp hơn để có thể chạy dễ dàng.
Bây giờ bạn có thể chạy trực tiếp bằng cách chỉ cần gọi composer từ bất kỳ đâu.
Lệnh này sẽ tải xuống và cài đặt phiên bản mới nhất của Laravel (hiện tại là 5.2) vào máy chủ của bạn.
Trước khi hoàn tất hướng dẫn, chúng ta cần cấp quyền thích hợp cho một số thư mục.
Điều kiện tiên quyết
Như thường lệ, bạn nên đảm bảo rằng máy chủ được cập nhật đầy đủ trước khi tiến hành.
Mã:
sudo apt-get update
sudo apt-get upgrade
Cài đặt Nginx
Cài đặt máy chủ Nginx rất đơn giản và dễ hiểu. Vậy chúng ta hãy thực hiện nhé.
Mã:
sudo apt-get install nginx
Cài đặt PHP-FPM
PHP không hoạt động với Nginx theo cùng cách như với Apache. Đối với Nginx, bạn cần triển khai FastCGI của PHP có tên là PHP-FPM (PHP-FastCGI Process Manager). Sau đó, hãy cài đặt PHP. Chúng ta cũng cần tiện ích mở rộng Mcrypt của PHP để Laravel hoạt động.
Mã:
sudo apt-get install php5-fpm php5-cli php5-mcrypt
Cấu hình Nginx cho Laravel
Trước khi tiếp tục, hãy thực hiện một số cấu hình cơ bản cho máy chủ Nginx mà chúng ta đã cài đặt. Trước tiên, chúng ta cần tạo thư mục nơi Laravel sẽ được cài đặt.
Mã:
sudo mkdir -p /var/www/html/laravel
Mã:
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/laravel
Mã:
sudo nano /etc/nginx/sites-available/laravel
Mã:
server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /usr/share/nginx/html; index index.html index.htm; server_name localhost; location / { try_files $uri $uri/ =404; }}
Chỉnh sửa tệp để trông giống như sau
Mã:
server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /var/www/html/laravel/public; index index.php index.html index.htm; server_name server_domain_or_IP; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { try_files $uri /index.php =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }}
Mã:
sudo ln -s /etc/nginx/sites-available/laravel /etc/nginx/sites-enabled/
sudo rm /etc/nginx/sites-enabled/default
Cấu hình PHP-FPM
Bước này rất đơn giản và yêu cầu chúng ta phải thay đổi một biến trong tệp cấu hình của PHP. Đã đến lúc mở php.ini
Mã:
sudo nano /etc/php5/fpm/php.ini
Mã:
;cgi.fix_pathinfo=1
Mã:
cgi.fix_pathinfo=0
Cuối cùng, chúng ta cũng cần kích hoạt tiện ích mở rộng mcrypt mà chúng ta đã cài đặt trước đó.
Mã:
sudo php5enmod mcrypt
Mã:
sudo service restart php5-fpm
Cài đặt Composer
Composer là một công cụ quản lý phụ thuộc cho phép chúng ta cài đặt nhiều khung và thư viện PHP thông qua một lệnh duy nhất. Nó xử lý tất cả các gói và phụ thuộc khác mà bạn phải cài đặt riêng để cài đặt một khung nếu bạn đi theo hướng thủ công. Nó có thể tiết kiệm rất nhiều thời gian và rắc rối. Chúng tôi sẽ cài đặt Laravel bằng Composer.Tải xuống Composer. Trước tiên, hãy đảm bảo bạn đang ở trong thư mục gốc của mình.
Mã:
curl -sS https://getcomposer.org/installer | php
Mã:
sudo mv composer.phar /usr/local/bin/composer
Cài đặt Laravel
Bây giờ chúng ta đã cài đặt composer, chúng ta cần cài đặt Laravel. Cài đặt bằng lệnh sau.
Mã:
sudo composer create-project laravel/laravel /var/www/html/laravel--prefer-dist
Trước khi hoàn tất hướng dẫn, chúng ta cần cấp quyền thích hợp cho một số thư mục.
Mã:
sudo chgrp -R www-data /var/www/html/laravel
sudo chmod -R 775 /var/www/html/laravel/storage