Cách cài đặt Caddy Web Server với PHP-FPM trên Ubuntu 16.04

theanh

Administrator
Nhân viên
Caddy hay máy chủ web Caddy là máy chủ web mã nguồn mở hỗ trợ HTTP/2 được viết bằng Go. Caddy có thể chạy trên nhiều hệ thống khác nhau, bao gồm cả những hệ điều hành chạy Linux, Windows, Mac OS, Android và BSD. Caddy có nhiều tính năng và có thể được cài đặt làm máy chủ web và làm proxy ngược cho ứng dụng của bạn. Các tính năng đáng chú ý nhất của máy chủ web Caddy là HTTPS tự động được bật theo mặc định mà không cần cấu hình bổ sung.

Trong hướng dẫn này, tôi sẽ chỉ cho bạn từng bước cách cài đặt và cấu hình máy chủ web Caddy với PHP-FPM 7.x trên Ubuntu 16.04. Chúng tôi sẽ cài đặt caddy trong môi trường cục bộ, sau đó cấu hình PHP-FPM cho các ứng dụng dựa trên PHP.

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

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

Những việc chúng tôi sẽ làm​

  1. Cài đặt máy chủ web Caddy
  2. Cấu hình máy chủ web Caddy
  3. Chạy Caddy dưới dạng Dịch vụ trên Systemd Ubuntu 16.04
  4. Cài đặt PHP và PHP-FPM 7.0
  5. Cấu hình máy chủ web Caddy bằng PHP-FPM
  6. Kiểm tra

Bước 1 - Cài đặt máy chủ web Caddy​

Trong bước này, chúng tôi sẽ cài đặt máy chủ web Caddy bằng tập lệnh cài đặt. Tập lệnh sẽ tự động tải xuống tệp nhị phân và giải nén vào thư mục bin.

Tải xuống tập lệnh cài đặt và thực thi.
Mã:
wget https://getcaddy.com -O getcaddy
chmod +x getcaddy
Bây giờ hãy chạy tập lệnh cài đặt bằng sudo.
Mã:
sudo ./getcaddy personal http.ipfilter,http.ratelimit
Lưu ý:
  • getcaddy = tập lệnh cài đặt caddy.
  • personal = giấy phép cho cài đặt.
  • http.ipfileter ... = include caddy plugins installation.
Đợi caddy web server cài đặt và bạn sẽ nhận được kết quả như bên dưới.



Caddy web server đã được cài đặt trên Ubuntu 16.04.

Bước 2 - Cấu hình Caddy web server cơ bản​

Trong bước này, chúng ta sẽ cấu hình Caddy web server. Chúng ta sẽ tạo một người dùng mới có tên là 'caddy', tạo một thư mục mới cho tệp cấu hình caddy, một thư mục mới cho các tệp nhật ký caddy và một thư mục mới cho thư mục gốc web caddy.

Tạo một người dùng 'caddy' mới bằng tùy chọn '/bin/false' như hiển thị bên dưới.
Mã:
useradd -M -s /bin/false caddy
Bây giờ hãy chạy các lệnh mkdir sau để tạo thư mục caddy.
Mã:
mkdir -p /etc/caddy
mkdir -p /var/log/caddy
mkdir -p /var/www/html
Và thay đổi quyền sở hữu thành người dùng caddy.
Mã:
chown -R caddy:root /etc/caddy /var/log/caddy
Tiếp theo, chúng ta sẽ tạo tệp cấu hình caddy mới có tên là 'Caddyfile'. Vào thư mục '/etc/caddy' và tạo cấu hình bằng lệnh vim.
Mã:
cd /etc/caddy/
vim Caddyfile
Dán cấu hình caddy cơ bản vào đó.
Mã:
http://hakase-labs.co {
 root /var/www/html
 log /var/log/caddy/hakase-labs.log
 tls off
 gzip
 }
Lưu và thoát.

Lưu ý:
  • tls off = chúng tôi đang chạy caddy trên máy chủ cục bộ, nếu bạn đang ở trên máy chủ trực tiếp, hãy bật tùy chọn.


Cấu hình cơ bản cho máy chủ web Caddy đã hoàn tất.

Bước 3 - Chạy Caddy dưới dạng Dịch vụ trên Systemd Ubuntu 16.04​

Trong bước này, chúng ta sẽ chạy máy chủ web caddy dưới dạng dịch vụ trên hệ thống systemd và tạo tệp index.html cho máy chủ web caddy của chúng ta.

Tạo tệp dịch vụ mới có tên 'caddy.service' bằng vim.
Mã:
vim /etc/systemd/system/caddy.service
Dán cấu hình sau vào đó.
Mã:
[Unit]
 Description=Máy chủ web Caddy HTTP/2
 
 [Service]
 User=caddy
 Group=caddy
 Environment=CADDYPATH=/etc/caddy
 ExecStart=/usr/local/bin/caddy -agree=true -log=/var/log/caddy/caddy.log -conf=/etc/caddy/Caddyfile -root=/dev/null
 ExecReload=/bin/kill -USR1 $MAINPID
 LimitNOFILE=1048576
 LimitNPROC=64
 
 [Cài đặt]
 WantedBy=multi-user.target
Lưu và thoát.

Bây giờ hãy tải lại hệ thống systemd và khởi động dịch vụ caddy bằng lệnh systemctl như được hiển thị bên dưới.
Mã:
systemctl daemon-reload
systemctl start caddy
Cho phép nó khởi chạy mọi lúc khi khởi động hệ thống.
Mã:
systemctl enable caddy
Máy chủ web Caddy hiện đang chạy dưới dạng dịch vụ trên Ubuntu 16.04.



Tiếp theo, chúng ta sẽ tạo một tệp index.html mới trong thư mục gốc web '/var/www/html'.

Vào thư mục đó và tạo tệp index.html bằng các lệnh bên dưới.
Mã:
cd /var/www/html
echo '[HEADING=1]Máy chủ web Caddy[/HEADING]' > index.html
Bây giờ hãy thay đổi chủ sở hữu của tệp thành người dùng và nhóm 'caddy'.
Mã:
chown -R caddy:caddy /var/www/html
Tệp index.html đã được tạo. Mở trình duyệt web và nhập địa chỉ tên miền mà bạn đã nhập vào cấu hình 'Caddyfile', của tôi là:


Và bạn sẽ nhận được trang chỉ mục mà chúng tôi đã tạo.


Bước 4 - Cài đặt PHP và PHP-FPM 7.0​

Trong bước này, chúng ta sẽ cài đặt các gói PHP-FPM từ kho lưu trữ Ubuntu.

Chạy lệnh apt bên dưới.
Mã:
sudo apt install -y php7.0-fpm php7.0-cli curl
Sau khi cài đặt hoàn tất, chúng ta sẽ cấu hình tệp cấu hình cho PHP-FPM.

Đi tới thư mục '/etc/php/7.0/fpm' và chỉnh sửa tệp cấu hình nhóm 'www'conf' bằng vim.
Mã:
cd /etc/php/7.0/fpm
vim pool.d/www.conf
Bỏ chú thích các dòng bên dưới.
Mã:
listen.owner = www-data
listen.group = www-data
listen.mode = 0660
Lưu và thoát.

Bây giờ hãy thêm người dùng 'caddy' vào nhóm 'www-data'.
Mã:
usermod -a -G www-data caddy
Khởi động dịch vụ PHP-FPM và cho phép dịch vụ này khởi chạy mọi lúc khi khởi động hệ thống.
Mã:
systemctl start php7.0-fpm
systemctl enable php7.0-fpm
Cài đặt và cấu hình PHP-FPM cho cài đặt máy chủ web Caddy của chúng tôi đã hoàn tất.



Kiểm tra quy trình tệp socket PHP-FPM bằng netstat lệnh bên dưới.
Mã:
netstat -pl | grep php

Bước 5 - Cấu hình máy chủ web Caddy với PHP-FPM​

Sau khi cài đặt và cấu hình PHP-FPM, chúng tôi sẽ thêm hỗ trợ PHP-FPM vào máy chủ web Caddy.

Vào thư mục cấu hình '/etc/caddy' và chỉnh sửa tệp cấu hình 'Caddyfile' bằng vim.
Mã:
cd /etc/caddy
vim Caddyfile
Bây giờ hãy thêm cấu hình PHP-FPM sau cho caddy trong dấu ngoặc tên miền của bạn như bên dưới.
Mã:
http://hakase-labs.co {
 root /var/www/html
 log /var/log/caddy/hakase-labs.log
 errors /var/log/caddy/errors.log
 tls off
 gzip
 
 # Cấu hình PHP-FPM cho Caddy
 fastcgi / /run/php/php7.0-fpm.sock php {
 ext .php
 split .php
 index index.php
 }
 }
Lưu và thoát.

Khởi động lại máy chủ web caddy và dịch vụ PHP-FPM.
Mã:
systemctl restart caddy
systemctl restart php7.0-fpm
Cấu hình máy chủ web Caddy với PHP-FPM đã hoàn tất.


Bước 6 - Kiểm tra​

Truy cập thư mục gốc của web '/var/ww/html' và tạo tệp phpinfo 'info.php'.
Mã:
cd /var/www/html
echo '' > info.php
Mở trình duyệt web của bạn và nhập URL cài đặt máy chủ web Caddy như bên dưới.


Và bạn sẽ nhận được trang thông tin PHP như hiển thị bên dưới.



Quá trình cài đặt máy chủ web Caddy với PHP-FPM trên Ubuntu 16.04 đã hoàn tất thành công.

Tham khảo​

 
Back
Bên trên