一、Nginx简述

Nginx是一个开源且高性能、可靠的Http Web服务、代理服务。
开源: 直接获取源代码
高性能: 支持海量并发
可靠: 服务稳定
我们为什么选择 Nginx服务
Nginx非常轻量
功能模块少 (源代码仅保留http与核心模块代码,其余不够核心代码会作为插件来安装)
代码模块化 (易读,便于二次开发,对于开发人员非常友好)
互联网公司都选择Nginx
1.Nginx技术成熟,具备的功能是企业最常使用而且最需要的
2.适合当前主流架构趋势, 微服务、云架构、中间层
3.统一技术栈, 降低维护成本, 降低技术更新成本。
Nginx采用Epool网络模型,Apache采用Select模型
Select: 当用户发起一次请求,select模型就会进行一次遍历扫描,从而导致性能低下。
Epool: 当用户发起请求,epool模型会直接进行处理,效率高效,并无连接限制。
Nginx 典型应用场景

二、快速安装

Nginx软件安装的方式有很多种
1.源码编译=>Nginx (1.版本随意 2.安装复杂 3.升级繁琐)
2.epel仓库=>Nginx (1.版本较低 2.安装简单 3.配置不易读)
3.官方仓库=>Nginx (1.版本较新 2.安装简单 3.配置易读,推荐)

官方仓库

1.安装Nginx软件所需依赖包

[root@web ~]# yum install -y gcc gcc-c++ autoconf pcre pcre-devel make automake wget httpd-tools vim tree

2.配置nginx官方yum源

[root@web ~]# vim /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1

3.安装Nginx服务,启动并加入开机自启

[root@web ~]# yum install nginx -y
[root@web ~]# systemctl enable nginx
[root@web ~]# systemctl start nginx

4.通过浏览器访问该服务器ip或url地址 10.0.0.7

5.检查Nginx软件版本以及编译参数

[root@web ~]# nginx -v
nginx version: nginx/1.16.0
[root@web ~]# nginx -V

6.为了让大家更清晰的了解Nginx软件的全貌,可使用rpm -ql nginx查看整体的目录结构及对应的功能,如下表格整理了Nginx比较重要的配置文件

(1)Nginx主配置文件

路径 类型 作用
/etc/nginx/nginx.conf 配置文件 nginx主配置文件
/etc/nginx/conf.d/default.conf 配置文件 默认网站配置文件

(2)Nginx代理相关参数文件

路径 类型 作用
/etc/nginx/fastcgi_params 配置文件 Fastcgi代理配置文件
/etc/nginx/scgi_params 配置文件 scgi代理配置文件
/etc/nginx/uwsgi_params 配置文件 uwsgi代理配置文件

(3)Nginx编码相关配置文件

路径 类型 作用
/etc/nginx/win-utf 配置文件 Nginx编码转换映射文件
/etc/nginx/koi-utf 配置文件 Nginx编码转换映射文件
/etc/nginx/koi-win 配置文件 Nginx编码转换映射文件
/etc/nginx/mime.types 配置文件 Content-Type与扩展名

(4)Nginx管理相关命令

路径 类型 作用
/usr/sbin/nginx 命令 Nginx命令行管理终端工具
/usr/sbin/nginx-debug 命令 Nginx命令行与终端调试工具

(5)Nginx日志相关目录与文件

路径 类型 作用
/var/log/nginx 目录 Nginx默认存放日志目录
/etc/logrotate.d/nginx 配置文件 Nginx默认的日志切割

三、Nginx默认配置

Nginx主配置文件/etc/nginx/nginx.conf是一个纯文本类型的文件,整个配置文件是以区块的形式组织的。一般,每个区块以一对大括号{}来表示开始与结束。
Nginx主配置文件整体分为三块进行学习,分别是CoreModule(核心模块),EventModule(事件驱动模块),HttpCoreModule(http内核模块)

CoreModule核心模块

user nginx;                       #Nginx进程所使用的用户
worker_processes 1;             #Nginx运行的work进程数量(建议与CPU数量一致或auto)
error_log /log/nginx/error.log  #Nginx错误日志存放路径
pid /var/run/nginx.pid          #Nginx服务运行后产生的pid进程号

events事件模块

events {            worker_connections 25535;  #每个worker进程支持的最大连接数use epoll;                  #事件驱动模型, epoll默认
}

http内核模块

http {  #http层开始
...    #使用Server配置网站, 每个Server{}代表一个网站(简称虚拟主机)server {listen       80;            #监听端口, 默认80server_name  localhost;       #提供的域名access_log  access.log;     #该网站的访问日志#控制网站访问路径location / {root   /usr/share/nginx/html;   #存放网站源代码的位置index  index.html index.htm;    #默认返回网站的文件}}...#第二个虚拟主机配置'server' {...}include /etc/nginx/conf.d/*.conf;  #包含/etc/nginx/conf.d/目录下所有以.conf结尾的文件}   #http层结束

http server location扩展了解项

http{}层下允许有多个Server{}层,一个Server{}层下又允许有多个Location
http{} 标签主要用来解决用户的请求与响应。
server{} 标签主要用来响应具体的某一个网站。
location{} 标签主要用于匹配网站具体URL路径

四、Nginx网站配置

(1)新增nginx配置文件

[root@web01 conf.d]# cat /etc/nginx/conf.d/game.conf
server {listen 80;server_name game.com;location / {root /data/www/game;index index.html;}
}

(2)放置项目的源代码文件至nginx配置文件root指定的目录

[root@web01 conf.d]# mkdir /data/www/game && cd /data/www/game
[root@web01 game]# echo "This is my game page" > /data/www/game/index.html
[root@web01 game]# ls  index.html

(3)检查nginx的语法是否存在错误

[root@web01 code]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

(4)重载Nginx [reload|restart]

[root@web01 code]# systemctl reload nginx

转载于:https://www.cnblogs.com/Smbands/p/11409842.html

Nginx的应用之安装配置相关推荐

  1. Nginx (1)---安装配置

    Nginx 安装配置 Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/ ...

  2. Nginx篇01-基本安装配置和静态页面设置

    nginx的编译安装.添加模块.yum安装.简单配置.默认目录作用和静态页面配置. 0.编译安装nginx 0.1 准备工作 这里我们使用nginx的mainline版本的1.17.9来进行编译安装, ...

  3. win安装nginx php mysql_win平台安装配置Nginx+php+mysql 环境

    1.准备工作 (1)PHP 版本5.6.17 下载地址  PHP官网  脚本之家 下载地址 (2)Nginx 版本1.8.0 下载地址  Nginx官网 脚本之家 下载地址 (3)MySQL 版本5. ...

  4. Nginx+PHP for RHEL8安装配置

    1.安装nginx和php服务 yum install nginx php -y 2.配置Nginx 查看 Nginx用户和用户组是否存在,默认服务安装后自动创建 id nginx 进入Nginx配置 ...

  5. Nginx 和 PHP的安装配置

    1.安装PHP(注意系统默认安装了php,要安装高版本之前最好卸载旧版本,因为这个原因纠结了四个小时) ./configure \ --prefix=/usr/local/php \ --exec-p ...

  6. nginx(五)nginx与php的安装配置

    经过前面学习,对nginx有个大概的了解,来配置LNMP;只要是在系统安装过程中选择安装比较齐全的包,基本上系统都能满足安装要求,下面是我一个一个测试的,基本上全部安装所需的库文件,放心安装: [ro ...

  7. Linux九阴真经之大伏魔拳残卷4 nginx(模型,安装配置,模块)

    I/O模型 1  .同步/异步:关注的是消息通信机制 (既被调用用者是否返回消息) 同步:synchronous,调用者等待被调用者返回消息,才能继续执行 (被调用者完成任务也不通知调用者,调用者需 ...

  8. nginx详细文档 – 安装配置,深入源码,模块编写,编译器参数,系统函数

    nginx文档 吴东 April 28, 2009 Contents 1前言 5 2基本配置 7 2.1安装------- 7 2.2配置说明------. 10 2.3启动和控制------ 25 ...

  9. Nginx 源码编译安装配置

    Nginx 源码安装 作者:闫涛 E-mail:coderyantao@qq.com 备注:实验环境为虚拟机,selinux.firewalld都已经关闭.此次安装面向新手,并没有提前把所有问题解决, ...

最新文章

  1. linux下导入、导出mysql数据库命令 下载文件到本地
  2. CAN总线-位时序、波特率、采样点
  3. 游戏设计模式——面向数据编程思想
  4. 北大青鸟的班主任好当吗_北大青鸟学校怎么样靠谱吗?
  5. python编程软件哪个好-Python开发工具哪个好?好用的Python开发工具排行榜推荐下载...
  6. 蓝牙耳机哪款适合玩枪战类手游?低延迟听声辨位五款蓝牙耳机推荐
  7. 极品五笔自定义字库(jpwb.emb)
  8. amazon linux ami root 密码,Amazon Linux AMI 常见问题
  9. Android网络验证逆向,【Android逆向】去除无聊的网络验证弹窗与360加固
  10. 从跳频技术聊CDMA/WIFI之母海蒂·拉玛传奇的一生
  11. 这也能卖?拉美电商平台Mercado Libre上的10种奇葩产品
  12. 广州橙色优学:Java为什么这么火?Java好学吗?
  13. 【BZOJ2754】[SCOI2012]喵星球上的点名
  14. css预处理器-stylus 很少人用
  15. iMX8 Android Q 芯片级开发教程(1)
  16. 逸动系统升级连不上服务器,长安逸动1.6L刷ECU动力升级
  17. Web前端-React学习
  18. 论文笔记:Gazetteer-Enhanced Attentive Neural Networks for Named Entity Recognition
  19. 计算机无法连接到手机软件,手机无法连接电脑怎么办
  20. 数学分析-第一章-极限理论

热门文章

  1. MSP430F5529 DriverLib 库函数学习笔记(十四)看门狗定时器 (WDT)
  2. Exynos4412 内核移植(七)—— 内核相关知识补充
  3. Python爬虫入门四urllib库的高级用法
  4. dos下登录fedora下的vsftp失败
  5. Taro+react开发(82):设置默认属性
  6. 前端学习(3148):react-hello-react之getSnapBeforeUpdate
  7. [css] 你有没有使用过“形似猫头鹰”(例:`* + *{ ... }`) 的选择器?
  8. 工作324:uni-时间过滤器封装
  9. 前端学习(2792):下拉刷新
  10. 工作81:图片间隙问题