nginx的简单使用

embedded/2024/12/19 16:27:42/

目录

需求分析

文件配置

全局块配置

events块配置

http块

server1.conf文件配置

server2.conf文件配置

效果演示

访问页面

正确服务页面

​编辑

​编辑

错误页面

日志展示

server1日志

server2日志


需求分析

需求一:

当主机访问http://localhost:8081:/server1/location1时,访问index_sr1_location1.html

当主机访问http://localhost:8081:/server1/location2时,访问index_sr1_location2.html

当主机访问http://localhost:8081:/server2/location1时,访问index_sr2_location1.html

当主机访问http://localhost:8081:/server2/location2时,访问index_sr2_location2.html

需求二:

如果访问的页面不存在,则返回自定义的404页面

需求三:

将server1和server2的配置使用不同的配置文件分割

需求四:

为server1和server2各自创建访问日志

文件配置

①准备相关文件

创建用户www,然后创建上图所示文件结构

conf.d 用于创建server1和server2的nginx服务配置

myweb用于存储静态资源文件

404.html文件用来返回访问错误的内容

server1和server2目录中的logs用来存储访问日志

②配置nginx主配置文件

全局块配置

#更改用户为www
user www;
#设置开启进程为2
worker_processes 2;
#定义错误日志路径
error_log /var/log/nginx/error.log;
#定义nginx运行的pid文件
pid /var/run/nginx.pid
#开启nginx以辅助进程运行功能
daemon on;

events块配置

#开启序列化处理功能
accept_mutex on;
#设置nginx进程可以同时接受多个请求
multi_accept on;
#设置最大请求数量为1024
worker_connections 1024;
#设置使用算法
use epoll;

http块

#引入mime.type文件类型
include mime.type;
#设置文件默认类型
default_type application/octet-stream;
#开启sendfile(),加快进程的处理
sendfile on;
#设置长连接时间
keepalive_timeout 65;
#设置自定义日志配置
log_format server1 'this is log server1';
log_format server2 'this is log server2';
#引入自定义配置文件路径
include /home/www/conf.d/*.conf;

③配置server服务文件

server1.conf文件配置
server {listen 8081;server_name localhost;access_log /home/www/myweb/server2/logs/access.log  server1;location  /server1/location1 {root  /home/www/myweb;index index_sr1_location1.html;}location /server1/location2 {root  /home/www/myweb;index index_sr1_location2.html;}error_page 404 /404.html;location = 404.html  {root /home/www/myweb;index 404.html;}}
server2.conf文件配置
server {listen 8082;server_name localhost;access_log /home/www/myweb/server2/logs/access.log server2;location  /server2/location1 {root  /home/www/myweb;index index_sr2_location1.html;}location /server2/location2 {root  /home/www/myweb;index index_sr2_location2.html;}error_page 404 /404.html;location = 404.html  {root /home/www/myweb;index 404.html;}}

④重启nginx服务

#检查nginx配置是否有误
nginx -t
#重新加载nginx配置
systemctl reload nginx

效果演示

访问页面

正确服务页面

错误页面

日志展示

server1日志

server2日志


http://www.ppmy.cn/embedded/147063.html

相关文章

Gatherer、Collector 自定义 Stream 的中间操作、最终操作

这里写目录标题Gatherer、Collector 自定义 Stream 的中间操作、最终操作 collect(Collector) 自定义终止操作泛型方法示例实现 toList Collectors.CollectorImpl 与工厂方法 Collector.of() gather(Gatherer) 自定义中间操作泛型DownstreamIntegratorGatherer 的实例方法&…

vscode中同时运行两个python文件(不用安装插件)

如何在vscode中同时运行两个python文件呢?今天在工作中遇到了这个问题。 查了网上的方法是安装coder runner插件,后来发现自身就有这个功能。所以记录一下,方便后续查找: 这是我的第一个文件,点击右上角的运行旁边的小箭头,有一…

文件上传—阿里云OSS对象存储

目录 一、OSS简介 二、OSS基本使用 1. 注册账号 2. 基本配置 (1) 开通OSS (2) 创建存储空间 (3) 修改权限 (4) 配置完成,上传一张图片,检验是否成功。 (5) 创建AccessKey 三、Java项目集成OSS 1. 导入依赖 2. Result.java代码: …

如何将多张图片合并为一个pdf?多张图片合并成一个PDF文件的方法

如何将多张图片合并为一个pdf?当我们需要将多张图片合并为一个PDF文件时,通常是因为我们希望将这些图片整理成一个统一的文档,方便查看、分享或打印。无论是工作中需要提交的报告、学生们需要整理的作业,还是个人收藏的照片、旅行…

【Excel】单元格分列

目录 分列(新手友好) 1. 选中需要分列的单元格后,选择 【数据】选项卡下的【分列】功能。 2. 按照分列向导提示选择适合的分列方式。 3. 分好就是这个样子 智能分列(进阶) 高级分列 Tips: 新手推荐基…

java: 无效的目标发行版: 9或警告: 源发行版 9 需要目标发行版 9

idea启动Java项目报错: java: 无效的目标发行版: 9 警告: 源发行版 9 需要目标发行版 9 ReformAlertRulesController has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes clas…

C/S软件授权注册系统-轻量级WebApi服务器介绍

CS软件授权注册系统-WebApi服务器介绍 目录 WebApi服务器框架 WebApi服务器技术实现技术栈VS解决方案 Project项目说明 依赖包依赖程序集WebApi接口清单 管理员工具api接口(Swagger OpenApi)授权服务器api接口WebApplication 介绍 WebApi服务器框架 …

qt 类中的run线程

在Qt中,QThread类的run()方法是线程的执行入口,它是由QThread内部自动调用的,而不是用户直接调用。 详细解释: QThread类: QThread是Qt的线程类,提供了用于多线程操作的接口。我们可以创建QThread对象并将…