Nginx基础配置实例需求分析

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Nginx基础配置实例需求分析

日常我们在使用Ngnix的时候,经常碰到的是通过指令进行合理配置,可以让一台Nginx服 务器正常工作,并且提供基本的web服务器功能。

接下来介绍一下如何通过一个比较完整和最简单的基础配置实例进行配置?

现在有这样一个简单的需求,如何实现(1)有如下访问:

http://192.168.200.133:8081/server1/location1
访问的是:index_sr1_location1.html
 http://192.168.200.133:8081/server1/location2
访问的是:index_sr1_location2.html
 http://192.168.200.133:8082/server2/location1
访问的是:index_sr2_location1.html
 http://192.168.200.133:8082/server2/location2
访问的是:index_sr2_location2.html
(2)如果访问的资源不存在,
返回自定义的404页面
(3)将/server1和/server2的配置使用不同的配置文件分割
将文件放到/home/www/conf.d目录下,然后使用include进行
合并
(4)为/server1和/server2各自创建一个访问日志文件

先准备好对应的静态资源文件,如果有需要的可以后台私信我

使用tree /home/www 展现对应的目录结构

这里使用cp nginx.conf.default ngnix.conf,将ngnix文件进行复制

之后写

user www;  // 用来指定ngnix进程对应的用户

worker_processess 2;// 指定生成工作进程的个数,最好与CPU数目相同

error_log 第三个指定的是error.log文件,会将错误信息放到error.log里面

pid是用来指定当前master存放pid进程的文件

daemon on 是保护模式,默认系统就是daemon on 这里默认也可以不写

accept_mutex on; 解決惊群现象

multi_accept on;允许ngnix连接多个请求,worker_connections最大所能接收连接数

events 中的use epoll是处理的模型的类型,http中的sendfile是处理静态资源的类型

这里可以使用include 引入ngnix的相关配置,log_format可以指定日志打印的信息

之后编写统一配置文件conf.d

使用 vim/home/www/conf.d/server1.conf

创建配置文件

编写 server1/location1中的文件内容,server_name除localhost外也可以写IP和域名,access_log 编写登录日志内容 路径+参数格式,location 中在访问 /server1/location1时寻找路径root 和首页index

最后编写访问失败后跳转到404.html页面

再创建名字为2的配置文件

改一改路径和日志信息,最后按ESC :wq退出

之后返回到sbin文件下,检验语法,重新加载

server1路径呈现内容,server2路径呈现不同内容

使用tail -f /home/xxxx 可以查看对应登录日志信息

相关配置文件:

 ##全局块 begin##
 #配置允许运行Nginx工作进程的用户和用户组
user www;
 #配置运行Nginx进程生成的worker进程数
worker_processes 2;
 #配置Nginx服务器运行对错误日志存放的路径
error_log logs/error.log;
 #配置Nginx服务器允许时记录Nginx的master进程的PID文件路径和名
pid logs/nginx.pid;
 #配置Nginx服务是否以守护进程方法启动
#daemon on;
 ##全局块 end##
 ##events块 begin##
 events{
 #设置Nginx网络连接序列化
accept_mutex on;
 #设置Nginx的worker进程是否可以同时接收多个请求
multi_accept on;
 #设置Nginx的worker进程最大的连接数
worker_connections 1024;
 #设置Nginx使用的事件驱动模型
use epoll;
 }
 ##events块 end##
 ##http块 start##
 http{
 #定义MIME-Type
 include mime.types;
 default_type application/octet-stream;
 #配置允许使用sendfile方式运输
sendfile on;
 #配置连接超时时间
keepalive_timeout 65;
 #配置请求处理日志格式
log_format server1 '===>server1 access log';
 log_format server2 '===>server2 access log';
 ##server块 开始##
 include /home/www/conf.d/*.conf;
 ##server块 结束##
 }

server1.conf的配置文件:

server{
        #配置监听端口和主机名称
        listen 8081;
        server_name localhost;
        #配置请求处理日志存放路径
        access_log 
/home/www/myweb/server1/logs/access.log server1;
        #配置错误页面
        error_page 404 /404.html;
        #配置处理/server1/location1请求的location
        location /server1/location1{
            root /home/www/myweb;
            index index_sr1_location1.html;
        }
        #配置处理/server1/location2请求的location
        location /server1/location2{
            root /home/www/myweb;
            index index_sr1_location2.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;
        #配置错误页面,对404.html做了定向配置
        error_page 404 /404.html;
        #配置处理/server1/location1请求的location
        location /server2/location1{
            root /home/www/myweb;
            index index_sr2_location1.html;
        }
        #配置处理/server2/location2请求的location
        location /server2/location2{
            root /home/www/myweb;
            index index_sr2_location2.html;
        }
        #配置错误页面转向
        location = /404.html {
            root /home/www/myweb;
            index 404.html;
        }
    }
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
Centos 8.0中Nginx配置文件和https正书添加配置
这是一份Nginx配置文件,包含HTTP与HTTPS服务设置。主要功能如下:1) 将HTTP(80端口)请求重定向至HTTPS(443端口),增强安全性;2) 配置SSL证书,支持TLSv1.1至TLSv1.3协议;3) 使用uWSGI与后端应用通信(如Django);4) 静态文件托管路径设为`/root/code/static/`;5) 定制错误页面(404、50x)。适用于Web应用部署场景。
491 87
Nginx配置与命令
Nginx 是一款高性能的 HTTP 和反向代理服务器,其配置文件灵活且功能强大。本文介绍了 Nginx 配置的基础结构和常用指令,包括全局块、Events 块、HTTP 块及 Server 块的配置方法,以及静态资源服务、反向代理、负载均衡、HTTPS 和 URL 重写等功能实现。此外,还提供了常用的 Nginx 命令操作,如启动、停止、重载配置和日志管理等,帮助用户高效管理和优化服务器性能。
Nginx中配置HTTP2协议的方法
Nginx中配置HTTP2协议的方法
492 7
Nginx的location配置详解
【10月更文挑战第16天】Nginx的location配置详解
Nginx常用基本配置总结:从入门到实战的全方位指南
Nginx常用基本配置总结:从入门到实战的全方位指南
861 0
Nginx进程配置指令详解
Nginx进程配置指令主要包括:`worker_processes`设置工作进程数;`worker_cpu_affinity`绑定CPU核心;`worker_rlimit_nofile`设置最大文件描述符数量;`worker_priority`设置进程优先级;`worker_connections`设置最大连接数;`daemon`控制守护进程模式;`master_process`启用主进程模式;`pid`设置PID文件路径;`user`指定用户和组;`error_log`配置错误日志。这些指令在`nginx.conf`中配置,用于优化和控制Nginx的运行行为。
203 10
配置Nginx反向代理时如何指定后端服务器的权重?
配置Nginx反向代理时如何指定后端服务器的权重?
398 61
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
462 60
配置Nginx反向代理实现SSL加密访问的步骤是什么?
我们可以成功地配置 Nginx 反向代理实现 SSL 加密访问,为用户提供更安全、可靠的网络服务。同时,在实际应用中,还需要根据具体情况进行进一步的优化和调整,以满足不同的需求。SSL 加密是网络安全的重要保障,合理配置和维护是确保系统安全稳定运行的关键。
529 60
nginx配置证书和私钥进行SSL通信验证
nginx配置证书和私钥进行SSL通信验证
262 4
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等