运维04:nginx

源代码编译安装nginx

  • yum工具安装:自动下载nginx,且安装到固定的位置
  • 源代码编译安装:更适用于专业的企业服务器环境
    • 比起yum工具安装,会有更多额外的功能
    • 可以自定义安装路径、配置文件

安装环境

源代码编译安装(该方法适用于其他各种你想编译安装的第三方软件)

  • 下载nginx源代码
  • 在系统上安装好编译环境
  • 开始编译安装
  • 可以使用了
#安装gcc
#安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境
yum install gcc-c++

#安装 PCRE pcre-devel
#PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括perl兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式。
yum install -y pcre pcre-devel

#安装zlib
zlib库提供了很多种压缩和解压的方式,nginx使用zlib对http包的内容进行gzip,所以需要在centos上安装zlib库
yum install -y zlib zlib-devel

#安装openSSL
OpenSSL是一个强大的安全套接字层密码库,包括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或者其他目的的使用
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readlinedevel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel openssl openssl-devel -y
#卸载以前安装的nginx
yum remove nginx

#切换到/opt目录下,创建文件夹/ngx

#进入/opt/ngx目录,下载源码包
wget -c https://nginx.org/download/nginx-1.12.0.tar.gz

#解压缩源码包
tar -zxvf nginx-1.12.0.tar.gz

#进入刚刚解压缩出来的目录nginx-1.12.0  

#配置:自定义安装路径、开启支持访问https、开启nginx状态监测功能
./configure --prefix=/opt/nginx1-12/ --with-http_ssl_module --with-http_stub_status_module

make && make install

#启动nginx
#nginx的启动命令,就在sbin目录下。所以要进入/opt/nginx1-12/sbin目录
[root@192 sbin]# netstat -tunlp | grep nginx
[root@192 sbin]# ./nginx
[root@192 sbin]# netstat -tunlp | grep nginx
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      75287/nginx: master 

静态网站配置

#进入/opt/nginx1-12/conf目录,打开nginx配置文件
[root@192 conf]# vim nginx.conf

 35     server {
 36         listen       80;
 37         server_name  localhost;
 38 
 39         #charset koi8-r;
 40 
 41         #access_log  logs/host.access.log  main;
 42         
            #这是nginx的网站配置区域
 43         location / {
                #nginx通过root指令,确定nginx的网页文件放在哪里
                #这个html指的是nginx安装目录下的一个html文件夹
 44             root   /opt/qiujie;
                #index参数指的是首页的文件名
 45             index  index.html index.htm;
 46         }
 47 
 48         #error_page  404              /404.html;
 49 
 50         # redirect server error pages to the static page /50x.html
 51         #
 52         error_page   500 502 503 504  /50x.html;
 53         location = /50x.html {
 54             root   html;
 55         }

修改了配置文件,得重启这个程序,才能更新配置

#先验证配置文件语法是否正确
[root@192 conf]# /opt/nginx1-12/sbin/nginx -t
nginx: the configuration file /opt/nginx1-12//conf/nginx.conf syntax is ok
nginx: configuration file /opt/nginx1-12//conf/nginx.conf test is successful

#重启
/opt/nginx1-12/sbin/nginx -s reload

重启之后再在浏览器访问linux的ip,会显示404 

那是因为我们之前配置的 /opt/qiujie 路径下,不存在 html.index,我们可以自己创建一个

[root@192 conf]# mkdir -p /opt/qiujie
[root@192 conf]# touch /opt/qiujie/index.html
[root@192 conf]# vim /opt/qiujie/index.html
[root@192 conf]# cat /opt/qiujie/index.html
<meta charset=utf8>
欢迎来到我自己创建的 /opt/qiujie/index.html

基于端口的多虚拟主机

#这个功能是nginx自己提供的,你只需要修改它的配置文件即可
#在 /opt/nginx1-12/conf/nginx.conf 中,有一个server{}区域,这个就表示一个网站

        #第1个虚拟主机
 35     server {
 36         listen       80;
 37         server_name  localhost;
 38 
 39         #charset koi8-r;
 40 
 41         #access_log  logs/host.access.log  main;
 42 
 43         location / {
 44             root   /opt/qiujie;
 45             index  index.html index.htm;
 46         }
 47 
 48 
 49         error_page   500 502 503 504  /50x.html;
 50         location = /50x.html {
 51             root   html;
 52         }
 53     }
 54 
 55     #第2个虚拟主机
 56     server{
 57         listen          81;
 58         server_name     localhost;
 59     
 60         location / {
 61             root /opt/qiujie2;
 62             index index.html;
 63         }
 64     }

修改网站1的内容

[root@192 qiujie]# vim  /opt/qiujie/index.html
[root@192 qiujie]# cat  /opt/qiujie/index.html
<meta charset=utf8>
通过80端口访问网站1

修改网站2的内容

[root@192 conf]# mkdir /opt/qiujie2
[root@192 conf]# touch /opt/qiujie2/index.html
[root@192 conf]# vim /opt/qiujie2/index.html
[root@192 conf]# cat /opt/qiujie2/index.html
<meta charset=utf8>
通过81端口访问网站2

修改了配置文件,一定要重启nginx服务

/opt/nginx1-12/sbin/nginx -t
/opt/nginx1-12/sbin/nginx -s reload

访问日志

nginx能够记录用户的每一次访问请求

  • 对于该日志的记录、分析,可以更清晰地掌握服务器的动态信息,比如安全性
  • 对用户的行为进行检测、分析
    • 能够记录出用户访问的时间、次数、评率

步骤:

①修改nginx配置 

 ②重启nginx

/opt/nginx1-12/sbin/nginx -s reload

③持续检测日志内容的变化:tail -f 命令

[root@192 conf]# tail -f /opt/nginx1-12/logs/access.log

 

 nginx代理与中介

 

nginx代理服务的配置

  • 当你访问你的个人linux服务器,也就是nginx,但是却可以拿到另外一个网站的数据内容

步骤:

①更改配置文件

vim /opt/nginx1-12/conf/nginx.conf

②重启nginx

/opt/nginx1-12/sbin/nginx -s reload

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

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

相关文章

软件性能测试之压力测试详解

压力测试 压力测试是一种软件测试&#xff0c;用于验证软件应用程序的稳定性和可靠性。压力测试的目标是在极其沉重的负载条件下测量软件的健壮性和错误处理能力&#xff0c;并确保软件在危急情况下不会崩溃。它甚至可以测试超出正常工作点的测试&#xff0c;并评估软件在极端条…

卡通渲染总结《二》

关于技术的方面&#xff0c;一方面就是其轮廓边缘检测&#xff1a; 主要的方法可以被分为基于图片空间和对象空间&#xff0c;对象空间比图片空间会多一些立体坐标位置的信息。 轮廓类型分类 首先我们顶一下轮廓是什么&#xff0c;从一个视角看去如果一条边相邻的两个面其恰…

SpringSecurity6 | 默认用户生成

SpringSecurity6 | 默认用户生成 ✅作者简介&#xff1a;大家好&#xff0c;我是Leo&#xff0c;热爱Java后端开发者&#xff0c;一个想要与大家共同进步的男人&#x1f609;&#x1f609; &#x1f34e;个人主页&#xff1a;Leo的博客 &#x1f49e;当前专栏&#xff1a; Java…

加密市场进入牛初阶段?一场新的造富效应即将拉开帷幕!

周一(12月4日)&#xff0c;比特币一度上涨至42000美元&#xff0c;创下自2022年4月以来的最高水平。从目前比特币的走势来看&#xff0c;加密市场无疑已然进入到牛初阶段。 在牛市初期&#xff0c;确实存在人们不相信牛市到来的情况。由于在熊市中亏损的心理阻碍和对市场进一步…

ROS2教程03 ROS2节点

ROS2节点 版权信息 Copyright 2023 Herman YeAuromix. All rights reserved.This course and all of its associated content, including but not limited to text, images, videos, and any other materials, are protected by copyright law. The author holds all right…

在机器学习或者深度学习中是否可以直接分为训练集和测试集而不需要验证集?我的答案如下:

文章目录 一、训练集是什么&#xff1f;二、验证集是什么&#xff1f;三、测试集是什么&#xff1f;四、是否可以直接分为训练集和测试集而不需要验证集&#xff1f;总结 在机器学习和深度学习项目中&#xff0c;通常会将数据集划分为三个部分&#xff1a;训练集&#xff0c;验…

python精细讲解,从代码出发,适合新手宝宝食用的python入门教学【持续更新中】

文章目录 1、输入输出1.1 输入语句1.2 输出语句 2、List列表操作2.1 取值取单个元素&#xff1a;[]取出现的第一个元素&#xff1a;index 2.2 添加操作追加&#xff1a;append插入&#xff1a;insert 2.3 删除操作removepopdelclear清空 copy复制操作列表相关的数学操作数数&am…

c语言指针详解(上)

目录 一、指针的基本概念和用法 二、指针运算 2.1 指针的自增和自减运算 2.2 指针的自增和自减运算 三、数组和指针 四、指针和函数 4.1 在函数中使用指针作为参数和返回值 4.1.1 使用指针作为函数参数 4.1.2 使用指针作为函数返回值 4.2 指针参数的传值和传引用特性 4.2.1 指针…

【Maven】清理 maven 仓库

初始情况下&#xff0c;我们的本地仓库是没有任何jar包的&#xff0c;此时会从私服去下载&#xff08;如果没有配置&#xff0c;就直接从中央仓库去下载&#xff09;。 可能由于网络的原因&#xff0c;jar包下载不完全&#xff0c;这些不完整的jar包都是以lastUpdated结尾。此…

Web 应用程序性能测试核心步骤

通常大家做web 应用程序的时候会有哪些操作呢&#xff1f;今天就来看看常见的web 应用程序的常见操作。 Web 应用程序性能测试核心步骤 1&#xff1a;识别测试环境。确定物理测试环境和生产环境&#xff0c;以及测试团队可用的工具和资源。物理环境包括硬件、软件和网络配置。…

面试就是这么简单,offer拿到手软(三)—— 常见中间件框架面试题,es,redis,dubbo,zookeeper kafka 等

面试就是这么简单&#xff0c;offer拿到手软&#xff08;一&#xff09;—— 常见非技术问题回答思路 面试就是这么简单&#xff0c;offer拿到手软&#xff08;二&#xff09;—— 常见65道非技术面试问题 面试就是这么简单&#xff0c;offer拿到手软&#xff08;三&#xff…

Linux中shell的运行原理

在Linux中&#xff0c;每次输入命令时&#xff0c;前面都会出现一串字母&#xff0c;我们称之为命令行提示符 实际上&#xff0c;命令行提示符是一种外壳程序 外壳程序的概念&#xff1a; 前面我们提到过&#xff0c;在Linux中&#xff0c;一切皆文件&#xff0c;所谓的命令就…

关于神舟-战神TA5NS系统重装问题

加装固态卡在log处无法开机问题 下面是我的步骤 1.按f7选择pe安装系统&#xff0c;然后发现卡在战神log处不转动 2.下载驱动 TA5NS驱动地址 下载RAID驱动&#xff08;如果没有私信我&#xff0c;我网盘里有&#xff09;&#xff0c;拷到u盘中&#xff0c;然后进入pe系统里面…

深度学习之网络优化与正则化

视频链接&#xff1a;7.1 神经网络优化的特点_哔哩哔哩_bilibili 神经网络优化的特点 网络优化的难点 &#xff08;1&#xff09;网络结构差异大&#xff1a;不同模型之间的结构差异大——没有通用的优化算法、超参数多 &#xff08;2&#xff09;非凸优化问题&#xff1a;…

仓库管理系统【GUI/Swing+MySQL】(Java课设)

系统类型 Swing窗口类型Mysql数据库存储数据 使用范围 适合作为Java课设&#xff01;&#xff01;&#xff01; 部署环境 jdk1.8Mysql8.0Idea或eclipsejdbc 运行效果 本系统源码地址&#xff1a; 更多系统资源库地址&#xff1a;更多Java课设系统 更多系统运行效果展示…

十三、FreeRTOS之FreeRTOS时间管理

本节主要介绍以下内容&#xff1a; 1&#xff0c;延时函数介绍&#xff08;了解&#xff09; 2&#xff0c;延时函数解析&#xff08;熟悉&#xff09; 3&#xff0c;延时函数演示实验&#xff08;掌握&#xff09; 4&#xff0c;课堂总结&#xff08;掌握&#xff09; 一、…

华盛顿特区警方推荐购买 AirTag防止高端夹克被窃

根据美国媒体 Fox5 报道&#xff0c;近期由于天气变冷&#xff0c;华盛顿特区已发声多起高端 Canada Goose 夹克被窃事件。这些被偷走的加拿大鹅夹克价格从几百到几千美元不等&#xff0c;“Canada Goose”LOGO较为明显&#xff0c;很容易被小偷发现。 对此&#xff0c;警方建…

基于javaweb存钱小管家网页计划书

基于javaweb存钱小管家网页计划书 系统开发工具&#xff1a;idea 编程语言&#xff1a;Javaweb 数据库&#xff1a;MySQL 用户功能大致如下 需求 1. 功能性需求&#xff1a; &#xff08;1&#xff09;通用功能&#xff1a; 用户、管理员&#xff1a;用户包括注册和登录…

行业内卷严重到什么程度了?

一.内卷现状 最近大家都吐槽找工作难&#xff0c;确实很难。 不得不说&#xff0c;现在找工作的难度是以前的很多倍。甚至可以说地狱级都不为过。 以前只要简历一挂到网上&#xff0c;就有很多电话打过来。特别是在一线城市&#xff0c;各种类型企业的HR都来找&#xff0c;希…

【C++】POCO学习总结(九):网络

【C】郭老二博文之&#xff1a;C目录 1、Poco::Net::IPAddress IP地址 Poco::Net::IPAddress类存储IPv4或IPv6主机地址。 Poco::Net::IPAddress可以从字符串解析&#xff0c;也可以格式化为字符串。支持IPv4格式(d.d.d.d)和IPv6格式(x: x: x: x: x: x: x: x)。 常用函数&…