Ubuntu 24.04 配置 nginx + php-fpm

news/2024/11/15 0:35:43/

How to Setup Nginx with PHP-FPM on Ubuntu 24.04

nginx 是一个流行的 web 服务器,以其速度和可靠性而闻名,被许多顶级网站使用。要用 PHP 运行网站,您需要设置 php-fpm,nginxphp-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

我的开源项目

酷瓜云课堂-在线教育解决方案

  • course-tencent-cloud(酷瓜云课堂 - gitee仓库)
  • course-tencent-cloud(酷瓜云课堂 - github仓库)

http://www.ppmy.cn/news/1523895.html

相关文章

每日一题——第八十五题

题目&#xff1a;写一个函数&#xff0c;输入一个十六进制/八进制数/二进制数,输出对应的十进制数 #include<stdio.h> #include<stdlib.h> #include<string.h> #include<ctype.h> long stringToDecimal(const char* str, int base);int main() {char …

ML 系列:机器学习和深度学习的深层次总结(02)线性回归

ML 系列&#xff1a; — 简单线性回归 线性回归、损失函数、假设函数 图 1.线性回归 文章目录 一、说明二、线性回归2.1 简单线性回归2.2 回归中的损失函数 三、线性回归中的评估标准四、线性回归模型训练五、可视化5.1 假设函数5.2 计算训练模型的损失&#xff1a;5.3 绘制 H…

Spring Cloud Gateway学习记录

Spring中文网 https://springdoc.cn/spring-cloud-gateway/ Spring官网 https://spring.io/projects/spring-cloud-gateway 网关简介 大家都都知道在微服务架构中&#xff0c;一个系统会被拆分为很多个微服务。那么作为客户端要如何去调用这么多的微服务呢&#xff1f; 如果…

某red书最新版x-s、x-s-common(上)

目标&#xff1a;达人主页笔记翻页接口 打上xhr断点 断住后回溯堆栈&#xff0c;会发现直到异步堆栈为止参数都是已经生成的&#xff0c;那么进入异步堆栈打上断点 刷新页面发现参数已经生成&#xff0c;那么继续往下找堆栈 进入第二个异步。发现此时参数并未生成 异步调试…

算法:区间dp

文章目录 一、适用场景二、基本思路步骤时间复杂度&#xff1a; 三、例题 区间动态规划&#xff08;Interval DP&#xff09;是一种用于解决某些需要处理区间或子段问题的动态规划方法&#xff0c;特别适合于问题的解可以通过子区间的解进行组合的情况。该方法的核心思想是在子…

【习题】质量建议与测试指南

判断题 1. 兼容性测试是指测试长时间运行故障率&#xff08;崩溃、冻屏等&#xff09;、长时间运行内存资源异常等。 A、正确(True) B、错误(False) 2. 敏感个人信息是一旦泄露或者非法使用&#xff0c;容易导致自然人的人格尊严受到侵害或者人身、财产安全受到危害的…

《论层次架构及其在软件系统中的应用》写作框架,软考高级系统架构设计师

论文真题 层次架构作为软件系统设计的一种基本模式,对于实现系统的模块化、可维护性和可扩展性具有至关重要的作用。在软件系统的构建过程中,采用层次架构不仅可以使系统结构更加清晰,还有助于提高开发效率和质量。因此,对层次架构的理解和应用是软件工程师必备的技能之一…

如果 Android 手机出现数据丢失,如何在Android上恢复丢失的数据

当您的 Android 手机发生数据丢失时&#xff0c;您可能需要检索丢失的文件。为了帮助您完成此过程&#xff0c;以下是执行 Android 数据恢复的一些有效方法&#xff1a; 如何在Android上检索数据 如果您的 Android 手机出现数据丢失&#xff0c;您可能需要检索丢失的文件。为了…