Cài đặt Caddy với PHP & HTTPS dùng Let’s Encrypt


Cài đặt Caddy với PHP & HTTPS bằng Let’s Encrypt trên Ubuntu. Trong hướng dẫn này, bạn sẽ tìm hiểu cách cài đặt Caddy với PHP 7.4 và cũng định cấu hình HTTP trên Ubuntu 18.04.

Caddy là một máy chủ web nguồn mở với HTTPS tự động được viết bằng ngôn ngữ Go. Nó đảm nhiệm việc gia hạn chứng chỉ TLS, OCSP,static file serving, reverse proxying và hơn thế nữa.

Hướng dẫn này được thử nghiệm trên Google Cloud và AWS, vì vậy nó hoạt động tốt trên các dịch vụ đám mây khác như Azure, DigitalOcean hoặc bất kỳ VPS hoặc bất kỳ máy chủ chuyên dụng nào chạy Ubuntu.

Nếu bạn đang ở trên Google Cloud, bạn nên tuân theo các điều kiện tiên quyết được liệt kê bên dưới.

Điều kiện tiên quyết cho Google Cloud

  • Compute Engine Instance của bạn đang chạy.
  • Thiết lập Compute Engine.
  • Thiết lập DNS đám mây.

Nếu bạn đang ở trên AWS, bạn nên làm theo những điều kiện tiên quyết được liệt kê dưới đây.

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

  • Một EC2 Instance đang chạy.
  • Gán IP cho EC2 Instance của bạn.
  • Thiết lập và định cấu hình Tuyến 53 và trỏ tên miền của bạn đến AWS.
  • Kết nối SSH thành công với EC2 Instance của bạn.

SSH đến EC2 Instance của bạn và thực hiện các bước được liệt kê bên dưới.

Thiết lập máy chủ ban đầu

Hãy bắt đầu bằng cách cập nhật chỉ mục gói cục bộ bằng lệnh sau lên phiên bản mới nhất hiện có.

sudo apt update
sudo apt upgrade

Sau khi cập nhật xong, bạn có thể bắt đầu cài đặt Caddy.

Cài đặt Caddy

Khi bạn đã thiết lập máy chủ và tên miền được trỏ đến máy chủ của mình, bạn có thể tiến hành cài đặt.

Thực hiện các lệnh sau để cài đặt.

curl https://getcaddy.com | sudo bash -s personal

Sau khi cài đặt hoàn tất, bạn sẽ nhận được một đầu ra tương tự như bên dưới.

Output
Putting caddy in /usr/local/bin (may require password)
Caddy v1.0.4 (h1:wwuGSkUHo6RZ3oMpeTt7J09WBB87X5o+IZN4dKehcQE=)
Successfully installed

Đầu ra này cho thấy Caddy được cài đặt trong /usr/local/bin

Bạn có thể kiểm tra phiên bản Caddy được cài đặt bằng lệnh này.

caddy -version

Cấu hình Caddy

Bây giờ bạn cần cho phép nhị phân Caddy liên kết với các cổng 80 và 443

Thiết lập thư mục cho Caddy.

sudo mkdir /etc/caddy
sudo mkdir /etc/ssl/caddy 
sudo mkdir /var/log/caddy 

Cấu hình quyền.

sudo chown -R root:root /etc/caddy
sudo chown -R root:www-data /etc/ssl/caddy
sudo chown -R root:www-data /var/log/caddy 
sudo chmod 0770 /etc/ssl/caddy

Cấu hình dịch vụ Caddy Systemd

Bây giờ bạn có thể tạo tệp dịch vụ systemd cho Caddy có sẵn trong kho chính thức và tải lại cho những thay đổi có sẵn.

wget https://raw.githubusercontent.com/caddyserver/caddy/master/dist/init/linux-systemd/caddy.service
sudo cp caddy.service /etc/systemd/system/
sudo chown root:root /etc/systemd/system/caddy.service
sudo chmod 644 /etc/systemd/system/caddy.service
sudo systemctl daemon-reload

Cài đặt PHP 7.4 FPM

Thêm ondrej/php có gói PHP 7.4 FPM và các phần mở rộng PHP cần thiết khác.

sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php -y
sudo apt update

Cài đặt PHP 7.4 và một số phần mở rộng phổ biến.

sudo apt install php7.4-fpm php7.4-common php7.4-mysql php7.4-xml php7.4-xmlrpc php7.4-curl php7.4-gd php7.4-imagick php7.4-cli php7.4-dev php7.4-imap php7.4-mbstring php7.4-opcache php7.4-soap php7.4-zip php7.4-intl php7.4-bcmath unzip -y

Khi PHP 7.4 FPM được cài đặt, bạn có thể định cấu hình tên miền của mình với Caddy.

Cấu hình tên miền và Webroot trong Caddy

Tạo một thư mục mới cho các tập tin trang web của bạn và cấu hình quyền chính xác.

sudo mkdir /var/www
sudo chown www-data:www-data /var/www
sudo nano /var/www/index.html

Tạo một tệp Caddy có tên Caddyfile bên trong /etc/caddy/ và định cấu hình tên miền của bạn bằng HTTPS.

sudo nano /etc/caddy/Caddyfile

Sao chép cấu hình bên dưới và dán nó vào trong tập tin này.

https://domain.com {
     root /var/www/

     log /var/log/caddy/domain.log

     tls on
     gzip

     fastcgi / /run/php/php7.4-fpm.sock {
         ext .php
         split .php
         index index.php
     }
}

Nhấn CTRL + X theo sau là Y và ENTER để lưu và thoát tệp.

Khởi động lại / Khởi động Caddy để có sẵn các thay đổi và Let’s Encrypt được cấu hình tự động.

sudo service caddy start

Nếu bạn đã khởi động máy chủ Caddy trước khi bạn có thể khởi động lại bằng lệnh sau.

sudo service caddy restart

Bây giờ bạn có thể kiểm tra trạng thái của Caddy bằng lệnh sau.

sudo service caddy status

Bạn sẽ thấy một đầu ra tương tự như dưới đây.

Output
● caddy.service - Caddy HTTP/2 web server
    Loaded: loaded (/etc/systemd/system/caddy.service; disabled; vendor preset: enabled)
    Active: active (running) since Thu 2020-01-30 09:34:54 UTC; 3s ago
      Docs: https://caddyserver.com/docs
  Main PID: 24533 (caddy)
     Tasks: 6 (limit: 661)
    CGroup: /system.slice/caddy.service
            └─24533 /usr/local/bin/caddy -log stdout -log-timestamps=false -agree=true -conf=/etc/caddy/Caddyfile -root=/var/tmp

Nếu bạn gặp bất kỳ lỗi nào về ertificate Maintenance hoặc JSON parse , bạn có thể thử các bước sau được liệt kê bên dưới. Nếu bạn ổn bạn có thể bỏ qua nó.

sudo rm -rf /etc/ssl/caddy*

Kiểm tra cài đặt tập tin PHP

Tạo một tệp mới để xuất thông tin PHP đã cài đặt.

sudo nano /var/www/index.php

Nhập mã sau vào bên trong nó và lưu tệp.

<?php phpinfo();

Xác minh cài đặt Caddy

Khi bạn đã khởi động lại Caddy và hoàn thành tất cả các thiết lập được liệt kê ở trên, bạn có thể kiểm tra tên miền của mình trong trình duyệt web.

Bạn sẽ thấy thông tin PHP và tên miền của bạn được tải bằng HTTPS.

Cài đặt Caddy với PHP & HTTPS dùng Let's Encrypt

Phần kết luận

Bây giờ bạn đã học cách cài đặt Caddy với PHP 7.4 và cũng định cấu hình HTTPS bằng cách sử dụng Let’s Encrypt trên Ubuntu.

Xem thêm :Tại Đây
Blog Download Template Blogspot : Tại Đây
Blog Download Phần Mềm Free : Tại Đây
Blog Download Acapella : Tại Đây
Trang mã hóa URL : Tại Đây


Welcome to f4vnn.com: tất cả nội dung trên website được chúng tôi sưu tập trên Internet. Nếu có vấn đề về bản quyền với bài viết trên Blog vui lòng liên hệ và chúng tôi sẽ xóa bài viết ngay lập tức. Liên lạc với Admin qua mail: hoangvansy90@gmail.com

ĐỪNG QUÊN ĐĂNG KÝ FANPAGE ĐỂ NHẬN THỦ THUẬT MỚI NHẤT NHÉ!

  Bài viết cùng chuyên mục

  • Hướng dẫn cách cài đặt Office trên Linux bằng WinApps
  • Hướng dẫn cài đặt Arduino IDE trên CentOS 8
  • Hướng dẫn cách quản lý người dùng trong Ubuntu
  • Hướng dẫn cách cài đặt CentOS trên Raspberry Pi
  • Hướng dẫn cách tắt màn hình khóa Lock Screen trong Ubuntu