Thiết lập nginx + nhiều php-fpm trên Q4OS (Debian10)
Xin chào các nhà phát triển,
Gần đây, tôi đã sử dụng nhiều phiên bản php trên một lần cài đặt. Hôm nay chúng ta sẽ xem cách chúng ta có thể thiết lập linux + nginx + php đầy đủ trên Q4OS (Debian 10) (Tôi đang sử dụng Q4OS 3, nó dựa trên debian).
Trước hết, chúng ta cần thiết lập php repo cung cấp xác minh php …
wget https://packages.sury.org/php/apt.gpg
sudo apt-key add apt.gpg
Bây giờ hãy thêm repo vào danh sách nguồn của bạn …
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php7.list
Vì vậy, trước tiên chúng ta cần cài đặt nginx …
sudo apt install nginx-full -y
Bây giờ nignx đã được cài đặt, chúng tôi cần thiết lập nhiều xác minh PHP-FPM …
sudo apt install php7.3-fpm php7.3-cli php7.3-curl php7.3-mysql php7.3-xml php7.3-zip php7.3-mbstring php7.3-zip -y
sudo apt install php7.0 php7.0-fpm php7.0-mysql libapache2-mod-php7.0 libapache2-mod-fcgid -y
sudo apt install php7.4-fpm php7.4-cli php7.4-json php7.4-common php7.4-mysql php7.4-zip php7.4-gd php7.4-mbstring php7.4-curl php7.4-xml php7.4-bcmath -y
sudo apt install php8.0-fpm php8.0-cli php8.0-json php8.0-common php8.0-mysql php8.0-zip php8.0-gd php8.0-mbstring php8.0-curl php8.0-xml php8.0-bcmath -y
sudo apt install php8.1-fpm php8.1-cli php8.1-json php8.1-common php8.1-mysql php8.1-zip php8.1-gd php8.1-mbstring php8.1-curl php8.1-xml php8.1-bcmath -y
Bạn có thể chọn các mô-đun khác cho các xác minh php đã chọn như đã đề cập ở trên.
Bây giờ thực hiện lệnh follwing để kiểm tra và kích hoạt trạng thái nginx …
sudo systemctl enable nginx
sudo sustemctl status nginx
Bây giờ hãy cấu hình nginx để tạo máy chủ ảo mới cho trang web của bạn, tôi đang sử dụng test.lcoal làm vhost mới
Đầu tiên tạo thư mục mới
mkdir -p /var/www/test.local
Bây giờ tạo index.php trong /var/www/test.local dir và thêm nội dung sau vào đó.
<?php
phpinfo();
Tiếp theo, chúng tôi tạo tệp mới /etc/nginx/sites-available/test.local.conf và thêm nội dung sau vào tệp.
server {
listen 80;
listen [::]:80;
server_name mydomain.com www.mydomain.com;
root /var/www/mydomain.com;
index index.html index.php;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
}
}
Tương tự, bạn có thể chọn bất kỳ phiên bản php nào đã cài đặt thay vì php7.0-fpm
Tiếp theo tạo liên kết biểu tượng
sudo ln -s /etc/nginx/sites-available/test.local.conf /etc/nginx/sites-enabled/
Thêm mục nhập vào tệp / etc / hosts.
127.0.0.1 test.local
Lưu tệp và kiểm tra nó
sudo nginx -t
Nó sẽ hiển thị cho bạn ok nếu mọi thứ chính xác trong cấu hình nginx.
Khởi động lại nginx để có hiệu lực.
sudo systemctl restart nginx
Bây giờ đã đến lúc kiểm tra máy chủ ảo “test.local” của chúng tôi trong trình duyệt.
http://test.local
Một cái gì đó bạn cần chuyển đổi PHP trên CLI nếu bạn đang sử dụng nhiều phiên bản PHP và muốn cài đặt các phụ thuộc (sử dụng trình tổng hợp). Vì vậy, để chuyển đổi PHP, hãy sử dụng lệnh sau.
sudo update-alternatives --config php
Nó sẽ hiển thị cho bạn danh sách các phiên bản php đã cài đặt, bạn có thể chọn và nhấn enter để chọn phiên bản mặc định.
Hy vọng bạn thích bài viết này.