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模拟数据,通过数据加工对数据进行清洗并归档至OSS中进行存储。
相关文章
|
6天前
|
JavaScript 应用服务中间件 nginx
【项目部署系列教程】5. nginx配置反向代理,解决跨域接口的访问
【项目部署系列教程】5. nginx配置反向代理,解决跨域接口的访问
26 10
|
3天前
|
应用服务中间件 nginx
Nginx命令配置到系统环境变量
Nginx命令配置到系统环境变量
|
5天前
|
负载均衡 JavaScript 应用服务中间件
手把手教你玩转 Nginx 配置
作为静态服务器、反代和负载均衡器,Nginx 因高性能和灵活性广泛使用。
44 5
|
2天前
|
应用服务中间件 Linux nginx
CentOS 7 上配置 Nginx 作为反向代理
在CentOS 7上设置Nginx反向代理的步骤:安装Nginx;启动Nginx服务编辑`/etc/nginx/nginx.conf`;添加`proxy_pass http://app_server_address;将请求转发至应用服务器;重启Nginx`sudo systemctl restart nginx`;验证配置是否成功
|
3天前
|
网络协议 应用服务中间件 nginx
Nginx的http块sendfile,keepalive_timeout的配置指令说明
Nginx的http块sendfile,keepalive_timeout的配置指令说明
|
7天前
|
网络协议 应用服务中间件 网络安全
如何排查Nginx配置问题导致的域名访问错误
如何排查Nginx配置问题导致的域名访问错误
21 2
|
7天前
|
应用服务中间件 nginx
如何通过Nginx配置将请求转发到conf.d目录下的各个配置文件
如何通过Nginx配置将请求转发到conf.d目录下的各个配置文件
24 2
|
13天前
|
前端开发 Java 应用服务中间件
若依分离板nginx配置
若依分离板nginx配置
32 1
|
3天前
|
应用服务中间件 nginx
Ngnix07---通过yum安装Ngnix下 whereis ngnix可以查看Ngnix相关的一些目录,使用./nginx -y可以查看Ngnix版本及相关配置信息,使用 more CHANGES
Ngnix07---通过yum安装Ngnix下 whereis ngnix可以查看Ngnix相关的一些目录,使用./nginx -y可以查看Ngnix版本及相关配置信息,使用 more CHANGES
|
5天前
|
消息中间件 NoSQL Kafka
日志收集平台项目nginx、kafka、zookeeper、filebeat搭建的基本配置(2)
日志收集平台项目nginx、kafka、zookeeper、filebeat搭建的基本配置(2)