Nginx虚拟主机和日志详解

目录

  • 1.Nginx虚拟主机
    • 1.1基于IP虚拟主机
    • 1.2基于端口虚拟主机
    • 1.3基于域名实现的虚拟主机
  • 2.日志详解

1.Nginx虚拟主机

虚拟主机,Nginx配置中的多个server{}区域对应不同的业务(站点)

虚拟主机方式
基于域名的虚拟主机不同的域名访问不同的站点
基于IP的虚拟主机不同的IP地址可以访问不同的站点
基于端口的虚拟主机不同的端口可以访问不同的站点用于隐藏重要的路径或业务

1.1基于IP虚拟主机

[root@docker conf.d]# head *conf
==> www.ceshi.com.conf <==
server {listen  172.21.221.195 80;location / {root /code/ceshi;index index.html;}
}==> www.test.com.conf <==
server {listen  172.21.221.194 80;location / {root /code/test;index index.html;}
}

在这里插入图片描述

1.2基于端口虚拟主机

==> www.ceshi.com.conf <==
server {listen  80;server_name 172.21.221.194;location / {root /code/ceshi;index index.html;}
}==> www.test.com.conf <==
server {listen   81;server_name  172.21.221.194;location / {root /code/test;index index.html;}
}

在这里插入图片描述
在这里插入图片描述

1.3基于域名实现的虚拟主机

==> www.ceshi.com.conf <==
server {listen  80;server_name www.ceshi.com;location / {root /code/ceshi;index index.html;}
}==> www.test.com.conf <==
server {listen   81;server_name  www.test.com;location / {root /code/test;index index.html;}
}

在这里插入图片描述
在这里插入图片描述

2.日志详解

  • 访问日志 /var/log/nginx/access.log
  • 错误日志 /var/log/nginx/error.log

默认的日志格式:

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';

125.36.117.255 - - [09/Aug/2023:23:22:34 +0800] “GET /favicon.ico HTTP/1.1” 404 555 “http://www.ceshi1.com/” “Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36 Edg/115.0.1901.183” “-”

变量含义
$remote_addr记录了客户端的IP地址
$remote_user当nginx开启了用户认证功能后,此变量记录了客户端使用了哪个用户进行了认证
$time_local记录了当前日志条目的时间
$request记录了当前http请求的方法、url和http协议版本
$status记录了当前http请求的响应状态,即响应的状态码,比如200、404等响应码,都记录在此变量中
$body_bytes_sent记录了nginx响应客户端请求时,发送到客户端的字节数,不包含响应头的大小
$http_referer记录了当前请求是从哪个页面过来的,比如你点了A页面中的超链接才产生了这个请求,那么此变量中就记录了A页面的url(访问域名)
$http_user_agent记录了客户端的软件信息,比如,浏览器的名称和版本号
$http_x_forwarded_for真实客户端IP

nginx日志的json格式

 log_format json '{"@timestamp":"$time_iso8601",''"host":"$server_addr",''"service":"nginxTest",''"trace":"$upstream_http_ctx_transaction_id",''"log":"log",''"clientip":"$remote_addr",''"remote_user":"$remote_user",''"request":"$request",''"http_user_agent":"$http_user_agent",''"size":$body_bytes_sent,''"responsetime":$request_time,''"upstreamtime":"$upstream_response_time",''"upstreamhost":"$upstream_addr",''"http_host":"$host",''"url":"$uri",''"domain":"$host",''"xff":"$http_x_forwarded_for",''"referer":"$http_referer",''"status":"$status"}';
#通过调用相应的模式名即可
accesslog   /var/log/ngin/access.log json;
accesslog   /var/log/nginx/access.log main;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/83140.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Maven基础总结

前言 Maven 是一个项目管理工具&#xff0c;可以对 Java 项目进行构建、依赖管理。 基本要求掌握 配置Maven环境直接查。 得会在IDEA创建Maven的java项目吧、会创建Maven的web项目吧、会创建多模块项目吧。 得会配置插件pligin、依赖dependency吧 一、Maven四大特性 1、…

Spring中Bean的“一生”(生命周期)

文章目录 一、图解二、文字解析总结 一、图解 >注&#xff1a;处于同一行的执行顺序是从左往右 二、文字解析 SpringBean的生命周期总体分为四个阶段&#xff1a;实例化>属性注入>初始化>销毁 Step1 实例化Bean&#xff1a;根据配置文件中Bean的定义&#xff0c;…

Pytorch量化之Post Train Static Quantization(训练后静态量化)

使用Pytorch训练出的模型权重为fp32&#xff0c;部署时&#xff0c;为了加快速度&#xff0c;一般会将模型量化至int8。与fp32相比&#xff0c;int8模型的大小为原来的1/4, 速度为2~4倍。 Pytorch支持三种量化方式&#xff1a; 动态量化&#xff08;Dynamic Quantization&…

微服务服务拆分和远程调用

一、服务架构比较 单体架构&#xff1a;简单方便&#xff0c;高度耦合&#xff0c;扩展性差&#xff0c;适合小型项目。例如&#xff1a;学生管理系统 分布式架构&#xff1a;松耦合&#xff0c;扩展性好&#xff0c;但架构复杂&#xff0c;难度大。适合大型互联网项目&#x…

python的gui界面程序爬虫,python的gui界面怎么打开

大家好&#xff0c;小编来为大家解答以下问题&#xff0c;python的gui界面怎么打开&#xff0c;python的gui界面程序爬虫&#xff0c;今天让我们一起来看看吧&#xff01; Python支持多种图形界面的第三方库&#xff0c;包括&#xff1a; wxWidgets Qt GTK Tkinter&#xf…

[信号与系统系列] 正弦振幅调制之差拍信号

当将具有不同频率的两个正弦曲线相乘时&#xff0c;可以创建一个有趣的音频效果&#xff0c;称为差拍音符。这种现象听起来像颤音&#xff0c;最好通过选择一个频率非常小的信号与和另一个频率大约1KHz的信号&#xff0c;把二者混合从而听到。一些乐器能够自然产生差拍音符。使…

idea如何上传项目到github(超详细)

idea如何上传项目到github 1、IDEA配置2、项目上传到本地仓库2.1、创建本地git仓库2.2、Add操作2.3、Commit操作 3、项目上传到Github4、拿到登录Github的token 1、IDEA配置 File-Settings-VersionControl-Git Git的安装路径下bin目录下的git.exe可执行文件 可以直接点 Gene…

基于TF-IDF+TensorFlow+词云+LDA 新闻自动文摘推荐系统—深度学习算法应用(含ipynb源码)+训练数据集

目录 前言总体设计系统整体结构图系统流程图 运行环境Python 环境TensorFlow环境方法一方法二 模块实现1. 数据预处理1&#xff09;导入数据2&#xff09;数据清洗3&#xff09;统计词频 2. 词云构建3. 关键词提取4. 语音播报5. LDA主题模型6. 模型构建 系统测试工程源代码下载…

十九、docker学习-Dockerfile

Dockerfile 官网地址 https://docs.docker.com/engine/reference/builder/Dockerfile其实就是我们用来构建Docker镜像的源码&#xff0c;当然这不是所谓的编程源码&#xff0c;而是一些命令的集合&#xff0c;只要理解它的逻辑和语法格式&#xff0c;就可以很容易的编写Docke…

Android 面试重点之Framework (Handler篇)

近期在网上看到不少Android 开发分享的面试经验&#xff0c;我发现基本每个面经中多多少少都有Framework 底层原理的影子。它也是Android 开发中最重要的一个部分&#xff0c;面试官一般会通过 Framework底层中的一些逻辑原理由浅入深进行提问&#xff0c;来评估应聘者的真实水…

对强缓存和协商缓存的理解

浏览器缓存的定义&#xff1a; 浏览器缓存是浏览器在本地磁盘对用户最近请求过的文档进行存储&#xff0c;当访问者再次访问同一页面时&#xff0c;浏览器就可以直接从本地磁盘加载文档。 浏览器缓存分为强缓存和协商缓存。 浏览器是如何使用缓存的&#xff1a; 浏览器缓存…

HarmonyOS应用开发者基础认证考试题库

此博文为HarmonyOS应用开发者基础认证考试的最后的大考&#xff0c;要求100分取得90分方可获取证书、现将考试的题库进行分享&#xff0c;希望能帮到大家。但是需要注意的是&#xff0c;题库会不定时的进行题目删减&#xff0c;但是大概的内容是不会进行改变的。真心希望这篇博…

MongoDB 使用总结

&#x1f353; 简介&#xff1a;java系列技术分享(&#x1f449;持续更新中…&#x1f525;) &#x1f353; 初衷:一起学习、一起进步、坚持不懈 &#x1f353; 如果文章内容有误与您的想法不一致,欢迎大家在评论区指正&#x1f64f; &#x1f353; 希望这篇文章对你有所帮助,欢…

数据结构和算法——哈希查找冲突处理方法(开放地址法-线性探测、平方探测、双散列探测、再散列,分离链接法)

目录 开放地址法&#xff08;Open Addressing&#xff09; 线性探测&#xff08;Linear Probing&#xff09; 散列表查找性能分析 平方探测&#xff08;Quadratic Probing&#xff09; 定理 平方探测法的查找与插入 双散列探测法&#xff08;Double Hashing&#xff09…

爬虫011_元组高级操作_以及字符串的切片操作---python工作笔记030

获取元组的下标对应的值 注意元组是不可以修改值的,只能获取不能修改 但是列表是可以修改值的对吧

界面控件DevExpress WPF Chart组件——拥有超快的数据可视化库!

DevExpress WPF Chart组件拥有超大的可视化数据集&#xff0c;并提供交互式仪表板与高性能WPF图表库。DevExpress Charts提供了全面的2D / 3D图形集合&#xff0c;包括数十个UI定制和数据分析/数据挖掘选项。 PS&#xff1a;DevExpress WPF拥有120个控件和库&#xff0c;将帮助…

亚马逊对AIGC的定义

大家好&#xff0c;这里是Doker,最近AIGC非常火&#xff0c;这里我们聊一下什么是AIGC. 一、 AIGC 介绍与典型行业应用场景 ​AIGC 又称生成式 AI (Generative AI)&#xff0c;是继专业生产内容&#xff08;PGC&#xff0c; Professional-generated Content&#xff09;、用户…

人脸识别场景下Faiss大规模向量检测性能测试评估分析

在前面的两篇博文中&#xff0c;主要是考虑基于之前以往的人脸识别项目经历结合最近使用到的faiss来构建更加高效的检索系统&#xff0c;感兴趣的话可以自行移步阅读即可&#xff1a; 《基于facenetfaiss开发构建人脸识别系统》 Facenet算法的优点&#xff1a;高准确率&#…

DoIP学习笔记系列:(三)用CAPL脚本过“安全认证”,$27服务实现

文章目录 1. 如何调用接口通过安全认证?如何新建CAPL工程,在此不再赘述,本章主要分享一下如何在CAPL中调用DoIP接口、diag接口进行DoIP和诊断的测试。 注意:CANoe工具本身的使用没什么难的,所谓会者不难难者不会,各位小伙伴有疑问要多问,多交流,往往难事都只是一层窗户…

ElasticSearch:环境搭建步骤

1、拉取镜像 docker pull elasticsearch:7.4.0 2、创建容器 docker run -id --name elasticsearch -d --restartalways -p 9200:9200 -p 9300:9300 -v /usr/share/elasticsearch/plugins:/usr/share/elasticsearch/plugins -e "discovery.typesingle-node" elasti…