Ubuntu 24.04 配置 nginx + php-fpm

nginx 是一个流行的 web 服务器,以其速度和可靠性而闻名,被许多顶级网站使用。要用 PHP 运行网站,您需要设置 php-fpm,nginx 与 php-fpm 一起处理 PHP 文件并将其显示给用户,帮助网站更快地加载并处理更多流量。

本教程将帮助您在 ubuntu 24.04 系统上安装和配置 NGINX 和 PHP-FPM,创建虚拟主机并使用 Let ' s Encrypt SSL 启用 HTTPS 来保护您的网站。

Step 1: Update Your System

首先,我们需要确保你的系统是最新的。

复制代码
sudo apt update
sudo apt upgrade -y

Step 2: Install NGINX Server

现在,让我们安装 NGINX web 服务器,遵循以下步骤:

(1) 安装 nginx

复制代码
sudo apt install nginx

(2) 启动 nginx 服务

复制代码
sudo systemctl start nginx

(3) 设置 nginx 开机启动

复制代码
sudo systemctl enable nginx

(4) 检查 nginx 服务状态

复制代码
sudo systemctl status nginx

Step 3: Install PHP-FPM

按照以下步骤安装 PHP-FPM

(1) 安装 php-fpm

复制代码
sudo apt install php-fpm

(2) 启动 php-fpm 服务

复制代码
sudo systemctl start php-fpm

(3) 设置 php-fpm 开机启动

复制代码
sudo systemctl enable php-fpm

(4) 检查 php-fpm 服务状态

复制代码
sudo systemctl status php-fpm

Step 4: Configure NGINX to Use PHP-FPM

让我们为您的网站创建一个新的主机文件并将其配置为使用 PHP-FPM

(1) 切换到 NGINX sites-available 目录

复制代码
cd /etc/nginx/sites-available/

(2) 为网站创建一个新的配置文件,将"example.com"替换为您的实际域名。

复制代码
sudo nano /etc/nginx/sites-available/example.com

(3) 将以下配置添加到文件中,确保将"example.com"替换为您的实际域名。

nginx 复制代码
server {
  listen 80;
  server_name example.com www.example.com;

  root /var/www/html/example.com;
  index index.php index.html index.htm;

  location / {
    try_files $uri $uri/ =404;
  }

  location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
  }

  location ~ /\.ht {
    deny all;
  }
}

保存并退出配置文件

为您的网站创建文档根目录

复制代码
sudo mkdir -p /var/www/html/example.com

将目录的所有权分配给当前用户

复制代码
sudo chown -R $USER:$USER /var/www/html/example.com

设置目录权限

复制代码
sudo chmod -R 755 /var/www/html/example.com

创建一个简单的 PHP 文件来测试您的配置

复制代码
nano /var/www/html/example.com/index.php

将以下行添加到 index.php 文件中,保存并退出。

php 复制代码
<?php phpinfo(); ?>

把网站 example.com 的配置文件软连接到 sites-enabled 目录

复制代码
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

测试 NGINX 配置是否有语法错误

复制代码
sudo nginx -t

如果测试成功,重新加载 NGINX 以应用更改

复制代码
sudo systemctl reload nginx

打开您的 Web 浏览器,然后访问 http//example.com 您应该可以看到" PHP Info"页面,这意味着您的 NGINX 服务器已正确配置为使用 PHP-FPM。

Step 5: Secure Your Website with Let's Encrypt SSL

要使用 HTTPS 保护您的网站,您可以使用 Let ' s Encrypt SSL,请遵循以下步骤:

(1) 安装 Certbot

复制代码
sudo apt install certbot python3-certbot-nginx

(2) 运行 Certbot 获取并安装 SSL 证书,按照提示完成安装。

复制代码
sudo certbot --nginx

(3) 通过运行演练来验证 Certbot 自动更新

复制代码
sudo certbot renew --dry-run

我的开源项目

相关推荐
Qlittleboy38 分钟前
物联网项目tp5怎么也获取不到请求的参数问题
物联网·php·web
鸣弦artha43 分钟前
TabBar标签页组件详解
linux·git·ubuntu
建军啊2 小时前
php伪协议、代码审计工具和实战
开发语言·php
17(无规则自律)2 小时前
【CSAPP 读书笔记】第一章:计算机系统漫游
linux·c语言·arm开发·嵌入式硬件·学习·ubuntu
李少兄2 小时前
深入解析 Nginx 413 Request Entity Too Large 错误
运维·nginx
Lam㊣2 小时前
Ubuntu(Ubuntu 22.04.4 LTS)更改IP地址及网关
tcp/ip·ubuntu·php
Sheep Shaun3 小时前
Linux 环境搭建终极指南(Ubuntu 版):2026 最新版,适配 Ubuntu 24.04 LTS
linux·运维·服务器·ubuntu
运筹vivo@4 小时前
BUUCTF: [极客大挑战 2019]Upload
前端·web安全·php·ctf
运筹vivo@4 小时前
攻防世界: easyupload
前端·web安全·php·ctf
小林up4 小时前
Ubuntu访问不了Git解决办法
linux·git·ubuntu