nginx目录sites-enabled和sites-available介绍

模块简介:
在Nginx中,/etc/nginx/sites-enabled 目录和 /etc/nginx/sites-available 目录通常用于组织虚拟主机配置文件,这些文件描述了不同站点的设置,例如域名、目录结构等。

/etc/nginx/sites-available 目录:存放每个虚拟主机的配置文件。您可以将所有可用的虚拟主机配置文件放在这里。
/etc/nginx/sites-enabled 目录:存放已启用的虚拟主机配置文件的符号链接(symbolic links)。Nginx 会读取这个目录下的配置文件来确定哪些虚拟主机是处于启用状态的。

为什么 Nginx 使用到的配置有时会在 sites-enabled 目录下而不是 nginx.conf 中呢?这是因为 Nginx 支持将配置文件模块化,可以让您根据需要启用或禁用特定的站点配置,而不必修改主要的 nginx.conf 文件。这种模块化的方式能够更好地管理多个站点的配置。

当 Nginx 启动时,它会读取 nginx.conf 中的全局配置信息,然后再按顺序读取 sites-enabled 目录下的符号链接指向的配置文件,并将这些配置整合到运行时环境中。这样就实现了动态加载不同站点的配置,而不必修改主配置文件。

因此,通过使用 sites-enabled 目录,您可以灵活地管理不同站点的配置文件,让 Nginx 能够根据需要动态加载相应的配置,而不必修改主配置文件。

虚拟主机概念:
虚拟主机(Virtual Host)是指在一台服务器上托管多个域名或网站,通过配置不同的虚拟主机来实现多个网站共享同一台服务器资源的功能。使用虚拟主机可以让不同的网站在同一台服务器上运行,每个网站都拥有自己独立的配置和内容,就好像它们在不同的服务器上一样。

通常,虚拟主机有两种类型:基于 IP 地址的虚拟主机和基于域名的虚拟主机。

基于 IP 地址的虚拟主机:每个虚拟主机使用不同的 IP 地址来区分。当客户端通过请求的 IP 地址访问服务器时,服务器会根据请求的 IP 地址来确定提供哪个虚拟主机的服务。这种方式需要服务器拥有多个 IP 地址。基于域名的虚拟主机:多个域名共享同一个 IP 地址,通过 HTTP 请求头中的 Host 头字段来区分不同的虚拟主机。服务器接收到请求后会根据 Host 头字段中的域名信息来确定提供哪个虚拟主机的服务。这种方式是目前更为常见和广泛应用的虚拟主机方式。

通过配置不同的虚拟主机,您可以在同一台服务器上托管多个网站,并根据访问的域名或 IP 地址来正确路由请求到对应的网站。这样可以节省服务器资源,提高服务器利用率,并且方便管理多个网站。

域名虚拟主机示例:
server {
listen 80;
#listen 443 ssl;
server_name localhost;
client_max_body_size 500M;

    #ssl_certificate      cert/8659171_www.lt.bur.pem;#ssl_certificate_key  cert/8659171_www.lt.bur.key;#ssl_session_timeout 5m;#ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;#ssl_protocols TLSv1 TLSv1.1 TLSv1.2;location / {#try_files $uri $uri/ /index.html;proxy_pass http://192.168.1.98:32110;proxy_connect_timeout 15s;proxy_send_timeout 15s;proxy_read_timeout 15s;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto http;}location ~* ^/(udi|url|tur) {proxy_pass http://192.168.1.98:31059;proxy_connect_timeout 15s;proxy_send_timeout 15s;proxy_read_timeout 15s;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto http;}error_page   500 502 503 504  /50x.html;if ($request_uri ~ "/actuator"){return 403;}

}

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

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

相关文章

go-zero整合单机版Redis并实现增删改查

go-zero整合单机版Redis并实现增删改查 本教程基于go-zero微服务入门教程,项目工程结构同上一个教程。 go-zero微服务入门教程(点击进入) 本教程主要实现go-zero框架整合单机版Redis,并暴露接口实现对Redis数据的增删改查。 本…

Oracle容器镜像制作

对于 Oracle 数据库的容器镜像制作,oracle 官方提供了 Dockerfile 文件和制作脚本的(https://github.com/oracle/docker-images)。这里以 12c 为例看看怎么使用。 下载官方提供的 Dockerfile 文件和制作脚本 $ git clone https://github.com/…

笛卡尔树[天梯赛二叉树专项训练]

文章目录 题目描述思路AC代码 题目描述 输入样例1 6 8 27 5 1 9 40 -1 -1 10 20 0 3 12 21 -1 4 15 22 -1 -1 5 35 -1 -1 输出样例1 YES 输入样例2 6 8 27 5 1 9 40 -1 -1 10 20 0 3 12 11 -1 4 15 22 -1 -1 50 35 -1 -1 输出样例2 NO思路 见注释 AC代码 #include <bits/st…

【重学C语言】五、分支结构

【重学C语言】五、分支结构 三种结构分支结构if 语句示例 1&#xff1a;基本的 if 语句 if...else 语句示例 2&#xff1a;if...else 语句 嵌套 if示例 3&#xff1a;嵌套的 if 语句 if 语句与逻辑运算符示例 4&#xff1a;使用逻辑与&#xff08;&&&#xff09;示例 5…

搭建python编译环境

目录 1.安装依赖包 2.安装失败进行换源 3. 更新系统 通过C 语言调用 Python 代码&#xff0c;需要先安装 libpython3 的 dev 依赖库&#xff08;不同的 ubuntu 版本下&#xff0c; python 版本 可能会有差异&#xff0c; 比如ubuntu 22.04 里是 libpython3.10-dev &#xff09…

2024/4/1—力扣—最小高度树

代码实现&#xff1a; /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/ struct TreeNode* buildTree(int *nums, int l, int r) {if (l > r) {return NULL; // 递归出口}struct…

题解:CF1941C(C. Rudolf and the Ugly String)

题解&#xff1a;CF1941C&#xff08;C. Rudolf and the Ugly String&#xff09; 题目翻译&#xff1a;给定一个字符串&#xff0c;请你求出最少需要删除几个字符才能使得该字符串内不存在 map 和 pie。 我们可以先在该字符串内找到所有的子串 mapie&#xff0c;并删除中间的…

[StartingPoint][Tier1]Sequel

Task 1 During our scan, which port do we find serving MySQL? (在扫描过程中&#xff0c;我们发现哪个端口为 MySQL 提供服务&#xff1f;) 3306 Task 2 What community-developed MySQL version is the target running? (目标正在运行哪个社区开发的 MySQL 版本&…

Python实现【坦克大战】+源码分享

写在前面&#xff1a; 坦克大战&#xff0c;这款经典的电子游戏&#xff0c;无疑是许多80后和90后心中不可磨灭的童年记忆。它不仅仅是一款游戏&#xff0c;更是那个时代科技娱乐方式的缩影&#xff0c;见证了电子游戏行业的起步与发展。 在那个电脑和网络尚未完全普及的年代…

c语言实现2048小游戏

#include <stdio.h> #include <stdlib.h> #include <time.h> #include <conio.h>int best 0 ;// 定义2048游戏的结构体 typedef struct { int martix[16]; // 当前4*4矩阵的数字 int martixPrior[16]; // 上一步的4*4矩阵的数字 int emptyIndex[16…

LeetCode 1017. 负二进制转换

解题思路 相关代码 class Solution {public String baseNeg2(int n) {if(n0) return "0";String s"";while(n!0)if(Math.abs(n)%20){nn/(-2);ss0;}else{ss1; n (n-1)/(-2);}String t reverse(s);return t;}public String reverse(String s){Str…

嵌入式培训4-7

今日作业&#xff1a; 1、有一个隧道&#xff0c;全长5公里&#xff0c;有2列火车&#xff0c;全长200米&#xff0c; 火车A时速 100公里每小时 火车B时速 50公里每小时 现在要求模拟火车反复通过隧道的场景(不可能2列火车都在隧道内运行) 2、有一个隧道&#xff0c;全长5公里&…

前端三剑客 —— JavaScript (第一节)

目录 回顾内容 1.弹性布局 2.网格布局 JavaScript 概述 发展 浏览器 什么是Javascript JavaScript 能干什么 JavaScript需要的环境 JavaScript初体验 基本数据 JS书写方式 行内JS 页面JS 外部JS 1&#xff09;创建外部JS文件 2&#xff09;编写页面 对话框 警…

达梦数据库的快速加列参数ALTER_TABLE_OPT使用

达梦数据库的表数据量较大时&#xff0c;在线直接修改表结构新增字段会很慢 现象&#xff1a;开发人员测试环境增加一个字段耗时7分钟&#xff0c;数据量仅仅2千万&#xff1b; 为了解决这一问题&#xff0c;达梦数据库提供一个动态会话级参数&#xff1a;ALTER_TABLE_OPT&am…

vue中三种watcher

在分析之前我们先来看看&#xff0c;vue中都有哪些Watcher种类呢&#xff1f;以及分别在什么时候创建呢&#xff1f;从vue源码里面看&#xff0c;Watcher是一个公共类&#xff0c;在不同的地方去初始化Watcher就代表不同类的Watcher。主要分为以下三类&#xff1a; computed w…

【Threejs进阶教程-效果篇】1.Threejs文字与css2d/css3d技术

Threejs文字与css2d/css3d技术 学习ThreeJS的捷径学习之前先搞清楚自己想要什么样的效果贴图文字准备一张带文字的png贴图使用sprite来进行贴图实现2D始终面朝相机的文字使用planeGeometry来贴图实现3D文字使用planeGeometry来贴图实现伪3D文字动态贴图文字html2Canvas 文字几何…

【算法】寻找数组中心下标 - 双指针/求总和

题目 给定一个非空数组&#xff0c;找到一个元素&#xff0c;该元素左侧元素和等于其右侧元素和&#xff0c;返回该元素下标。 如果没有则返回-1&#xff0c;有多个则返回最左侧一个。 原理 1、双指针 定义两个变量&#xff0c;一个为从左侧累加的和 leftSum 0&#xff0c…

操作系统复习

虚拟内存 内存(memory)资源永远都是稀缺的&#xff0c;当越来越多的进程需要越来越来内存时&#xff0c;某些进程会因为得不到内存而无法运行&#xff1b; 虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续的可用的内存&#xff0c;而实际上&#xff0…

C++ P1271 【深基9.例1】选举学生会

文章目录 一、题目描述【深基9.例1】选举学生会题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 二、参考代码 一、题目描述 【深基9.例1】选举学生会 题目描述 学校正在选举学生会成员&#xff0c;有 n n n&#xff08; n ≤ 999 n\le 999 n≤999&#xff09;名候…

HTML基础知识详解(下)(如果想知道html的全部基础知识点,那么只看这一篇就足够了!)

前言&#xff1a;在上一篇文章中&#xff0c;我们已经学习完了超链接标签、列表标签和表格标签&#xff0c;但是我们还有一些标签没有学习&#xff0c;在这篇文章中&#xff0c;我们将学习剩余的标签。 ✨✨✨这里是秋刀鱼不做梦的BLOG ✨✨✨想要了解更多内容可以访问我的主页…