nginx_01

1.安装

yum install epel-release -y  # 安装yum的扩展包
yum install nginx -y
systemctl start nginx.service  #启动nginx
systemctl enable nginx.service
# netstat -lntup # 查看端口占用情况
# 可以看到nginx默认占用了80端口    

 2.nginx配置

# 注意配置文件的语法格式,每行结尾必须是英文的分号。
worker_processes 1; #启动nginx时工作进程的数量,可以加大这个数字来提高nginx的处理请求的效率,但是这个数字也不能太大,因为进程是消耗系统内存资源的。调整一下这个数字,然后通过free指令可以查看一下内存容量的变化。建议和CPU核数一致就行
# worker_processes 2; # 改完配置文件都需要重启nginx才生效,systemctl restartnginx.service
events {
worker_connections 1024; #连接数量,每个进程可以处理1024连接
}
http {                            #http模块
   include       mime.types;     #include是包含的意思,这行的意思是,nginx启动的时候加载nginx.conf主配置文件的时候,加载到这一行的时候,先包含加载一下mime.types文件里面的配置,这个文件主要是用来标识支持哪些多媒体格式,这个文件在nginx.conf所在目录 default_type application/octet-stream;  
#如果不能识别的文件,那么默认以八进制数据流的方式来打开文件
    # sendfile       on;  
    # keepalive_timeout 65;
   charset utf-8;                          #设置字符集,默认没有,
   server {                          #一个网站,一个nginx可以运行多个网站,添加这个配置项即可
       listen       80;                    #监听端口,可以修改,比如改个81看看效果,再启动看看80效果
       server_name localhost;         #网站的域名,现在没有配置域名,默认就是localhost,比如后面可以配置www.wulaoban.top
       location / {                    #目录,必须要有个location


           root   html;                #root是站点根目录的意思,值为html表示一个相对路径,绝对路径是/usr/share/nginx/html,也可以改昂,比如改成绝对路径root /usr/share/nginx/html,或者改为其他路径root /web
         #root /web # 改为这个试一下,别忘了去根目录下创建一个web目录,给web目录一些文件看看效果
 
           index index.html index.htm;    #默认首页,访问网址根路径的时候,自动访问站点根目录下面的index或者index.html或者index.htm文件,如果没有这几个名字的文件呢?访问的时候就会提示403,需要在网址上手动指定文件名称,这几个文件名称也是可以改的,比如改为jaden.html。
       }
   }

//最小化配置文件,
grep -Ev '#|^$' nginx.conf.default > nginx.conf
nginx -t  //检测语法是否正确
systenctl restart nginx //重启生效

nginx进程

[root@web01 nginx]# ps -ef | grep nginx
root       1725      1  0 20:16 ?        00:00:00 nginx: master process 
/usr/sbin/nginx # master process是主进程的意思,也叫做管理进程,它是用来管理nginx整个运行的,nginx的其他子进程如果死掉了,它会自动在启动其他的子进程,比如尝试kill 下面的子进程,你会发现另外一个进程又自动启动了。真正干活的进程是下面的worker process进程,叫做工作进程,有请求来了都是它处理的
nginx      1727   1725  0 20:16 ?        00:00:00 nginx: worker process # 可以看到
nginx是以nginx用户身份启动的
root       1869   1552  0 20:35 pts/0    00:00:00 vim nginx.conf
root       1898   1872  0 20:35 pts/1    00:00:00 grep --color=auto nginx

3.多站点部署

1.多服务

server即服务,多写一个server即可。

worker_processes  2;
events {
   worker_connections  1024;
}
http {
   include       mime.types;
   default_type application/octet-stream;
   charset utf-8;
    # 8yy复制8行,小p黏贴
   server {
listen       80;
server_name localhost;
location / {
root   /html/one;
index index.html index.htm;
}
   }
   server {
listen       81;
server_name localhost;
location / {
root   /html/two;
index index.html index.htm;
}
   }
   server {
listen       82;
server_name localhost;
location / {
root   /html/three;
index index.html index.htm;
}
   }
}

2.多ip

在虚拟机上可以采用多块网卡达到效果

worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    server {
        listen       192.168.2.110:80;
        server_name   localhost;
        location / {
            root   /root/wz;
            index  index.html index.htm;
        }
    }

 server {
        listen       192.168.2.111:80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
        }
    }



}

3.多域名

需要在本机 hosts文件设置一下域名。


worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    server {
        listen     80;
        server_name   a.zsj.com;
        location / {
            root   /root/wz;
            index  index.html index.htm;
        }
    }

 server {
        listen      80;
        server_name b.zsj.com;
        location / {
            root   html;
            index  index.html index.htm;
        }
    }



}

#修改完配置文件之后,重启nginx

4.include

如果每来一个需求,我们就在nginx主配置文件中添加一个server记录,那么nginx配置文 件会变得很大,很难管理,所以要换一种方式来管理配置文件,将每个人的配置都单独拆分出来即可。

worker_processes  2;
events {
   worker_connections  1024;
}
http {
   include       mime.types;
   default_type application/octet-stream;
   charset utf-8;
   include /etc/nginx/conf.d/*.conf; 
# 加载外部以.conf结尾的配置文件,如果你的路径下没有conf.d就自行创建一个-- mkdir conf.d
}
//conf.d目录
[root@bogon nginx]# ls conf.d/
home.conf  yiliao.conf
[root@bogon nginx]# 

5.nginx日志

现在web服务器都必须要开启日志记录功能,而且记录必须超过半年,这是网络安全法规定的。

日志存放路径

/var/log/

nginx 日志路径/var/log/nginx

 1.access日志

cat /var/log/nginx/access.log 

2.erorr日志 

3.定义日志格式

# 定制日志记录格式:这个必须配置在在server配置外面昂
log_format compression '$remote_addr - $remote_user [$time_local] '
                       '"$request" $status $bytes_sent '
                       '"$http_referer" "$http_user_agent" "$gzip_ratio"';
                       
# compression可以理解为是这个格式的名字,谁想用这个格式,谁就用这个名字来指定格式
192.168.61.1 - - [12/Apr/2023:14:19:59 +0800] "GET / HTTP/1.1" 304 0 "-"
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) 
Chrome/111.0.0.0 Safari/537.36"
# $remote_addr 客户端的ip地址
# $remote_user 客户端的用户名
# $time_local 当前时间
# $request     请求起始行
# $status     http状态码
# $bytes_sent 响应资源的大小
# $http_referer 记录资源的跳转地址
# $http_user_agent 用户的终端信息
# $gzip_ratio     gzip的压缩级别                       
# 比如我们想让日志记录一下请求时间、客户端ip、请求uri、状态码、文件大小
# vim /etc/nginx/nginx.conf
#需要现在nginx.conf文件中配置 log格式,单独的log文件才能用

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

macOS Sonoma 无法打开分段式Dmg文件的解决办法

在macOS Sonoma 14.X及更高版本的系统中,用户可能会遇到一个棘手的问题:无法直接打开“分段式”DMG(磁盘映像)安装包文件。这种情况通常发生在尝试安装一些大型软件或游戏时,尤其是那些因为文件体积巨大而采用分段压缩…

开源AI大模型测评网站

1、排行榜 多个 AI 模型的排行榜和详细的性能评估,包括总排行榜、基础能力排行榜、安全类模型排行榜、金融领域应用排行榜、汽车领域应用排行榜以及工业领域应用排行榜 地址:SuperCLUEhttps://www.superclueai.com/ 2.报告合集 内容体系:代表性的数据集、基线(预训练)模型…

Kivy UI界面

一、版本介绍 Ubuntu:18.04.6 LTS Conda:4.5.12 Python:3.6.15 Kivy:2.0.0 二、安装Kivy # 更新系统包列表 sudo apt-get update# 安装Kivy的依赖项 sudo apt-get install -y python-pip libsdl2-dev libsdl2-image-dev li…

【JavaWeb】网上蛋糕商城后台-商品管理

概念 本文讲解和实现网上蛋糕商城的后台管理系统中的商品管理功能。 商品列表 点击后台管理系统的head.jsp头部的“商品管理”功能选项,向服务器发送请求/admin/goods_list 因此需要在servlet包中创建AdminGoodsListServlet类,用于获取商品信息列表 …

TDM(BPM)-MIMO-FMCW雷达MATLAB仿真

本文通过对车载毫米波雷达信号流程和链路的仿真,建立基本的算法框架,可用于算法性能的验证。并提供基础MATLAB仿真代码,作为分享和参考。 一、信号的产生 车载毫米波雷达广泛使用线性调频连续波雷达,也即发射信号频率随时间线性变…

C++ | Leetcode C++题解之第79题单词搜索

题目&#xff1a; 题解&#xff1a; class Solution { public:bool exist(vector<vector<char>>& board, string word) {rows board.size();cols board[0].size();for(int i 0; i < rows; i) {for(int j 0; j < cols; j) {if (dfs(board, word, i, …

面向对象设计之套路——设计模式

1、总则 面向对象的分析设计编程思想&#xff0c;通过封装、继承、多态把程序的耦合度降低&#xff0c;用设计模式使得程序更加灵活&#xff0c;容易修改&#xff0c;并且易于复用。 让业务逻辑与界面逻辑分开&#xff0c;让它们的耦合度下降&#xff0c;只有分离&#xff0c;…

jenkins部署想定报错

报错&#xff1a; 解决办法&#xff1a; 登录被编译的设备&#xff0c;清楚旧代码&#xff0c;在重新执行

亲测有效!关键点检测——COCO格式转YOLO格式代码!!!

话不多收&#xff0c;直接上代码&#xff0c;这个我也是找了好久的&#xff0c;分享不易&#xff0c;给个鼓励&#xff01;&#xff08;记得点赞收藏&#xff09; 大家可以直接使用此代码转换你自己的数据集&#xff0c;路径换成你自己的就行了&#xff0c;注意路径格式&#x…

Springboot集成SpringbootAdmin实现服务监控管理-10

SpringbootAdmin Spring Boot Admin是一个用于管理和监控Spring Boot应用程序的开源软件。 概要介绍 Spring Boot Admin可以监控Spring Boot单机或集群项目&#xff0c;它提供了详细的健康&#xff08;Health&#xff09;信息、内存信息、JVM系统和环境属性、垃圾回收信息、…

AI自动生成PPT工具上新

AI大模型能力持续增强&#xff0c;零一万物&#xff08;李开复领导的团队&#xff09;推出的万知只是其中的一个缩影&#xff0c;生成PPT也只是其中一个能力。 如果你还没用WPSAI的PPT自动生成能力&#xff08;WPS Office AI实战总结&#xff0c;智能化办公时代已来&#xff09…

web安全之登录框渗透骚姿势,新思路

不管漏洞挖掘还是挖SRC&#xff0c;登录框都是重点关注对象&#xff0c;什么漏洞都有可能出现&#xff0c; 本篇文章做个总结&#xff0c;后面发现新思路后会继续更新 万能密码 or 弱口令 SQL注入 水平越权 垂直越权 逻辑漏洞 短信轰炸 邮箱轰炸 信息泄露 验证码DOS XSS万能密…

【C++模板入门】

C模板入门 泛型编程函数模板格式原理函数模板的实例化 类模板 泛型编程 如何实现一个通用的交换函数呢&#xff1f; void Swap(int& left, int& right) {int temp left;left right;right temp; } void Swap(double& left, double& right) {double temp l…

信安标委发布16项网络安全国家标准:8项为旧标准替代,8项标准为新发布

1. 背景 根据2024年4月25日国家市场监督管理总局、国家标准化管理委员会发布的中华人民共和国国家标准公告&#xff08;2024年第6号&#xff09;&#xff0c;全国网络安全标准化技术委员会归口的16项国家标准正式发布。 2. 标准清单 本次国家标准涵盖了信息技术安全评估准则、…

【oj题】环形链表

目录 一. OJ链接&#xff1a; 环形链表 【思路】 快慢指针 ​编辑【扩展问题】 为什么快指针每次走两步&#xff0c;慢指针走一步可以解决问题&#xff1f; ​编辑【扩展问题】快指针一次走3步&#xff0c;走4步&#xff0c;...n步行吗&#xff1f; 二. OJ链接&#xff1a…

栈和队列初级题目(包含四个题)

目录 一、原题链接&#xff1a; 二、有效的括号&#xff1a; ​编辑代码实现&#xff1a; 三、用队列实现栈&#xff1a; 四、用栈实现队列&#xff1a; 五、设计循环队列&#xff1a; 六、读书分享&#xff1a; 一、原题链接&#xff1a; 20. 有效的括号 225. 用队列实…

理解Go语言中的测试种类

测试金字塔将测试分为不同的类别,如下图所示 单元测试在金字塔的底部。大部分测试都是单元测试,它们编写成本代、执行速度快且执行结果高度确定。通常,越往金子塔的上层走,测试变得越复杂,运行速度越慢,并且越难保证执行结果的确定性。 一个常见的技巧是明确说明要运行哪…

maven的安装与配置(超详细)

在Java开发中&#xff0c;配置Maven环境有几个重要的原因&#xff1a; 依赖管理&#xff1a;Maven 是一个强大的依赖管理工具&#xff0c;它能够帮助开发人员轻松地管理项目所需的各种第三方库和组件。通过在项目的 Maven 配置文件&#xff08;pom.xml&#xff09;中定义依赖&…

怎么把手机ip地址变成了外省

在日常使用中&#xff0c;有时我们可能因为某些原因需要快速切换手机的IP地址&#xff0c;特别是当需要从一个省份切换到另一个省份的IP时。这种需求可能来源于网络访问限制、地理位置相关服务的使用、或者网络安全等方面的考虑。那么&#xff0c;怎么把手机IP地址变成外省呢&a…

Ps 滤镜:蒙尘与划痕

Ps菜单&#xff1a;滤镜/杂色/蒙尘与划痕 Filter/Noise/Dust & Scratch 蒙尘与划痕 Dust & Scratch滤镜可用于修复图像中的小瑕疵、尘埃或划痕&#xff0c;特别适合用于清理扫描的照片或老照片中的损伤&#xff0c;以及其他因拍摄条件不理想或相机传感器上的尘埃所造成…