【web服务搭建实验】之nginx基础学习

目录

  • 一、nginx的简介
  • 二、nginx安装实验
    • 虚拟主机的配置
    • web服务器的主流实现方式-LAMP和LNMP

一、nginx的简介

Nginx是一款轻量级HTTP服务器,同时也是代理邮箱服务器,具备反向代理,通用代理的功能。支持多个系统,和不同操作系统。一般用来搭建web服务器和ftp服务器。
特点:

  • 支持高并发,优化后最高可支持百万并发连接
  • 内存资源消耗低
  • 高扩展性,采用模块化设计,并支持第三方模块
  • 高可靠性,采用master—woker模式工作,woker出现故障,master有可以开一个新woker来提供服务。

二、nginx安装实验

nginx安装 :yum install nginx

常用的nginx命令:

检查nginx配置文件 :nginx -t
查看nginx版本:nginx -v
查看nginx版本,编译器版本,配置参数等:nginx -V
启动niginx  :systemctl start nginx.service
在这里我启动不了,一看是我的apache服务也开着的,就需要把服务关了,不然端口占用

netstat -anp | grep 80 查看端口

/etc/nginx/conf.d/ -------子配置文件目录
/etc/nginx/nginx.conf-----主配置文件
/usr/share/nginx/html/----为默认的nginx网址根目录
/var/log/nginx/  ---------为默认日志目录

实验我采用的阿里云服务器搭建,因为我是大学生,有阿里云的免费服务器

[root@gang ~]# yum install nginx -y
[root@gang ~]# systemctl start nginx.service 
[root@gang ~]# cd /usr/share/nginx/html/
[root@gang html]# echo xixi > index.html
一般来说,云上是没有防火墙,selinux的,但是需要在云上加安全组,去阿里云把80端口放行,然后通过在浏览器输入公网ip地址,能看到xixi哟。

在这里我们需要注意的是目录的权限问题,有时候我们在其他系统中创建一个目录是,发现权限不是755,这个时候会发现访问不了,报403的错误

虚拟主机的配置

在nginx服务器中,通过不同的端口号,完成虚拟主机的配置。
在/data目录创建3个不同的目录,nginx1,nginx2,nginx3。

[root@gang data]# mkdir nginx{1..3}
[root@gang data]# echo hello,nginx1 > nginx1/index.html
[root@gang data]# echo hello,nginx2 > nginx2/index.html
[root@gang data]# echo hello,nginx3 > nginx3/index.html
/etc/nginx/conf.d/       写子配置文件,注意以。conf结尾
[root@gang data]# vim /etc/nginx/conf.d/vhost.conf
[root@gang data]# systemctl reload nginx.service 
[root@gang data]# curl localhost:81
hello,nginx1
[root@gang data]# curl localhost:82
hello,nginx2
[root@gang data]# curl localhost:83
hello,nginx3

nginx的子配置文件:

server{listen 81;server_name localhost;location / {root /data/nginx1;index index.html;}
}
server{listen 82;server_name localhost;location / {root /data/nginx2;index index.html;}
}
server{listen 83;server_name localhost;location / {root /data/nginx3;index index.html;}
}

基于ip的不同虚拟主机也是一样的,只需要在listen 8.123.234.1:80就行。修改监听的参数就行,后期最好给每个虚拟主机做一个日志文件。
基于名称的虚拟主机,也只需要修改server_name的参数就行,还要写一个hosts。

nginx的主配置文件中的location参数有几个优先级 (location =)>(^~)>(*)>(location部分起始路径) > (/)

location模块中可开启autoindex功能,表示对访问目录进行索引
注意:这个目录没有index.html才行 参数 autoindex on;
达到下面这种效果。
在这里插入图片描述

如果location=是一个目录的话,后面是需要跟/的。

web服务器的主流实现方式-LAMP和LNMP

L:web服务器所依赖的操作系统
A和N:表示Apache和Nginx,来实现web服务器
M:表示mysql,用来存储数据的
P:php,以及其他编程语言

安装mysql5.7,在清华镜像中下载。

wget https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64/mysql-community-common-5.7.28-1.el7.x86_64.rpm
wget https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64/mysql-community-libs-5.7.28-1.el7.x86_64.rpm
wget https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64/mysql-community-client-5.7.28-1.el7.x86_64.rpm
wget https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64/mysql-community-server-5.7.28-1.el7.x86_64.rpm

[root@manged mysql]# yum install *.rpm 安装

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

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

相关文章

秒杀系统如何设计

秒杀系统主要有以下特点 1、高并发瞬时流量 2、热点数据 3、数据量大 4、库存的正确扣减 5、黄牛抢购 6、重复下单 7、对普通交易的影响 前后端缓存 首先是秒杀功能的开启,以及前端资源的访问,这部分内容一般都是提前放到CDN中,让这些静态…

图机器学习年度汇集

一、深度学习模型优化 在图机器学习领域,深度学习模型的优化尤为重要。今年的主要进展包括了利用先进的优化算法提高模型精度、减少训练时间以及对大规模图数据的适应性。部分团队还推出了定制化的深度学习模型,特别适用于复杂的图形结构和交互。 二、…

【算法】Java-二叉树的右视图(BFS、DFS两种解法)

题目要求: 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例 1: 输入: [1,2,3,null,5,null,4] 输出: [1,3,4]示例 2: 输入: [1,null,3] 输出: [1,3]示例 3: 输入…

e2studio开发三轴加速度计LIS2DW12(3)----检测活动和静止状态

e2studio开发三轴加速度计LIS2DW12.3--检测活动和静止状态 概述视频教学样品申请源码下载新建工程工程模板保存工程路径芯片配置工程模板选择时钟设置UART配置UART属性配置设置e2studio堆栈e2studio的重定向printf设置R_SCI_UART_Open()函数原型回调函数user_uart_callback ()…

Jetpack Compose -> 声明式UI Modifier

前言 本章主要介绍下 Compose 的声明式 UI 以及初级写法&#xff1b; 什么是声明式UI 传统UI 传统 UI 方式来声明UI <androidx.appcompat.widget.LinearLayoutCompat android:layout_width"match_parent" android:layout_height"match_parent&quo…

Pytorch中的标准维度顺序

在PyTorch中&#xff0c;如果一个张量包括通道数&#xff08;C&#xff09;、宽度&#xff08;W&#xff09;、高度&#xff08;H&#xff09;和批量大小&#xff08;N&#xff09;&#xff0c;那么它的标准维度顺序是 [N, C, H, W]&#xff0c;即&#xff1a; 第一个维度 N 是…

test Property-based Testing-04-junit-quickcheck

拓展阅读 开源 Auto generate mock data for java test.(便于 Java 测试自动生成对象信息) 开源 Junit performance rely on junit5 and jdk8.(java 性能测试框架。性能测试。压测。测试报告生成。) junit-quickcheck&#xff1a;基于 JUnit 风格的属性驱动测试库 junit-qu…

送水小程序开发:如何选择最适合的技术平台

选择最适合的技术平台对于开发送水小程序至关重要。在这篇文章中&#xff0c;我将为您介绍如何选择最适合的技术平台来开发送水小程序&#xff0c;以及各种技术平台的优缺点。无论您是刚刚起步的创业公司还是成熟的送水服务提供商&#xff0c;本文都将为您提供有关送水小程序开…

深信服超融合HCI版本升级,6.0.0R5升级至6.8.0R2

超融合升级&#xff0c;需要满足以下条件及前期准备&#xff1a; 确认HCI的升级序列号有效升级时长大概在一个半小时&#xff0c;安全起见&#xff0c;需预留至少三至四小时窗口期升级前&#xff0c;需要将所有虚拟机关机&#xff0c;涉及到业务无法访问&#xff0c;需提前通知…

六、K8S-DaemonSet(DS)

DaemonSet&#xff1a;简称DS&#xff0c;守护进程控制器 DS的主要作用&#xff0c;是在kubernetes集群里&#xff0c;运行一个daemon pod。DS只管理POD 对象&#xff0c;然后通过nodeAffinity和Toleration这两个调度器的小功能&#xff0c;保证每个节点上有且只有一个pod。 特…

网络-DHCP中继(思科)

思科 前提&#xff1a;将R1 R3配置16板卡 将R1更改标识符为三层交换机 将R3更改标识符为交换机 拓扑图&#xff1a; R2进行配置 配置IP地址 为12.0.0.2 配置默认路由到R1的f1/4接口 配置dhcp地址池 配置vlan10的地址池 配置vlan20的地址池 三层交换机R1进行配置 将f1/4接口…

高光谱分类论文解读分享之基于形态卷积神经网络的高光谱影像分类

IEEE TGRS 2021&#xff1a;基于形态卷积神经网络的高光谱影像分类 题目 Morphological Convolutional Neural Networks for Hyperspectral Image Classification 作者 Swalpa Kumar Roy; Ranjan Mondal; Mercedes E. Paoletti; Juan M. Haut; Antonio Plaza 关键词 Clas…

关于git与git-lfs对文件压缩存储方面的研究

先说结论&#xff0c;git使用了Delta增量压缩算法&#xff0c;git-lfs实测没有进行任何压缩&#xff0c;这个结论让我很震惊。 测试过程如下&#xff1a; 测试git仓库自身的压缩 准备一个包含许多杂项文件的文件夹&#xff0c;大概几百M&#xff0c;要保证有一个txt文本文件…

require vs import,深入了解JavaScript模块引入方式,应用场景剖析

JavaScript作为一种脚本语言&#xff0c;经过多年的发展已经成为Web开发的主要语言之一。随着项目的复杂性增加&#xff0c;对于代码组织和管理的需求也日益迫切。这促使了JavaScript模块系统的不断发展。 背景 JavaScript模块系统的发展背景 在早期&#xff0c;JavaScript并…

Qt框架学习 --- CTK编译(Qt5.15.2+vs2019+cmake)

系列文章目录 第二章 CTK的测试demo https://blog.csdn.net/yonug1107716573/article/details/135527289 文章目录 系列文章目录前言一、准备工作二、编译步骤1.修改文件2.编译CTK2.1 准备2.2 cmake界面配置2.3 配置编译器2.4 编译的配置设置2.5 选择需要编译的模块2.6 生成2.…

Python和Julia TensorFlow科学计算常微分方程求解器

常微分方程 常微分方程&#xff08;ODE&#xff09;可用于描述动态系统。 从某种程度上来说&#xff0c;我们生活在一个动态系统中&#xff0c;窗外的天气从黎明到黄昏都在变化&#xff0c;我们体内发生的新陈代谢也是一个动态系统&#xff0c;因为随着时间的推移&#xff0c;…

Jenkins容器使用宿主机Docker

构建镜像和发布镜像到harbor都需要使用到docker命令。而在Jenkins容器内部安装Docker官方推荐直接采用宿主机带的Docker即可。 设置Jenkins容器使用宿主机Docker 设置宿主机docker.sock权限&#xff1a; sudo chown root:root /var/run/docker.sock sudo chmod orw /var/run/d…

Easypoi word 模板导出问题

按word模板导出报错 源代码&#xff1a; //获取项目的根目录 ClassPathResource classPathResource new ClassPathResource("/word/template.docx"); InputStream inputStream classPathResource.getStream(); MyXWPFDocument xwpfDocument WordExportUtil.expo…

Uibot (RPA设计软件)股票板块行情抓取————课前材料四

微信群发助手机器人的小项目友友们可以参考小北的课前材料二博客~ (本博客中会有部分课程ppt截屏,如有侵权请及请及时与小北我取得联系~&#xff09; 紧接着小北的前两篇博客&#xff0c;友友们我们即将开展新课的学习~RPA 培训前期准备指南——安装Uibot(RPA设计软件&#x…

Java 并发性和多线程3

七、线程安全及不可变性 当多个线程同时访问同一个资源&#xff0c;并且其中的一个或者多个线程对这个资源进行了写操作&#xff0c;才会产生竞态条件。多个线程同时读同一个资源不会产生竞态条件。 我们可以通过创建不可变的共享对象来保证对象在线程间共享时不会被修改&…