nginx学习之配置web网站

伤心猪大肠
发布于 2022-9-6 16:56
浏览
0收藏

nginx的优势

1、nginx是一个高性能的HTTP反向代理服务器,也是一个IMAP/POP/SMTP服务器(邮局协议)。

优点:C10k服务器(万级并发)

​ 动静分离技术(提高网站性能)

  • 反向代理:把请求集中收集再次分发的技术

  • nginx的Web优势:

IO多路复用(I:Input输入 O:Output输出):单个线程同时管理多个I/O流

  • IO多路复用技术类型:1. select 2. poll 3. epoll(eginx使用的epoll模型来处理了IO多路复用)特点:异步非阻塞

时分多路复用(CPU时钟/中断设计)

频分多路复用

不用apache的原因:线程故障后会影响同进程下的其他线程不稳定。


总结特点:高并发 IO多路复用 epoll 异步 非阻塞


nginx部署yum

1、nginx官网:https://nginx.org/

nginx版本类型

Mainline version:主线版,即开发版

Stableversion:> 最新稳定版,生产环境上建议使用的版本

Legacy versions:遗留的老版本的稳定版

官方网站推荐安装方法操作:文档——安装nginx——在linux上安装(软件包)——RHEL/CentOS

1、更新yum仓库(可装可不装)

sudo yum install yum-utils

nginx学习之配置web网站-鸿蒙开发者社区

(已更新安装最新版本)

2、配置yum仓,创建以下文件

vim /etc/yum.repos.d/nginx.repo

nginx学习之配置web网站-鸿蒙开发者社区

[nginx-stable](开发版)
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1(开启)
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline](主线版)
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0(关闭)
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

默认开启开发版禁用主线版

nginx学习之配置web网站-鸿蒙开发者社区

使用主线版运行以下命令(再将开发版禁用。也可进入yum仓手动改成0,或直接注释掉开发版)

sudo yum-config-manager --enable nginx-mainline

nginx学习之配置web网站-鸿蒙开发者社区

yum仓变化(需要哪个版本就改成哪个版本)

nginx学习之配置web网站-鸿蒙开发者社区

yum makecache

查看可安装版本信息

yum list | grep nginx

3、安装nginx

yum install -y nginx

nginx学习之配置web网站-鸿蒙开发者社区

4、开启nginx服务

systemctl start nginx

5、设置服务启动反向代理

systemctl enable nginx

nginx学习之配置web网站-鸿蒙开发者社区

安装的版本号

nginx学习之配置web网站-鸿蒙开发者社区

6、关闭防火墙查看状态

nginx学习之配置web网站-鸿蒙开发者社区
nginx学习之配置web网站-鸿蒙开发者社区
7、浏览器访问

nginx学习之配置web网站-鸿蒙开发者社区

nginx配置文件

nginx所有文件

rpm -ql nginx

nginx学习之配置web网站-鸿蒙开发者社区

/etc/logrotate.d/nginx:日志轮转

/etc/nginx/nginx.conf:主配置文件

/etc/nginx/conf.d:子配置文件夹

/etc/nginx/conf.d/default.conf:默认网站配置文件

/etc/nginx/mime.types:文件关联程序

/etc/nginx/modules:模块文件类,第三方模块(是空的,需要时自己下载第三方模块放到里边)

nginx基本配置

主配置文件分3个模块

  1. CoreModule 核心模块(进程数等)
  2. EventsModule 事件驱动模块(工作模式等)
  3. HttpCroeModule http内核模块(文档程序类型,配置文件等)

nginx学习之配置web网站-鸿蒙开发者社区

子配置文件

nginx学习之配置web网站-鸿蒙开发者社区

自己配置网站

nginx学习之配置web网站-鸿蒙开发者社区
nginx学习之配置web网站-鸿蒙开发者社区

nginx学习之配置web网站-鸿蒙开发者社区

  • 修改过conf文件一定要重启服务才生效

nginx学习之配置web网站-鸿蒙开发者社区

本地做域名解析

nginx学习之配置web网站-鸿蒙开发者社区

nginx学习之配置web网站-鸿蒙开发者社区

测试访问

nginx学习之配置web网站-鸿蒙开发者社区

  • elinks:纯字符浏览器
  • yum install -y elinks 安装测试访问域名

nginx学习之配置web网站-鸿蒙开发者社区

nginx学习之配置web网站-鸿蒙开发者社区

nginx学习之配置web网站-鸿蒙开发者社区

nginx学习之配置web网站-鸿蒙开发者社区

用另一台虚拟机测试访问成功

nginx学习之配置web网站-鸿蒙开发者社区

nginx学习之配置web网站-鸿蒙开发者社区

标签
1
收藏
回复
举报
回复
    相关推荐