Linux下nginx环境搭建及详解

1.1 什么是nginx

nginx (engine x)是一个可以作为HTTP WEB服务器、反向代理服务器、邮件代理服务器和一个通用的TCP /
UDP代理服务器(1.9.0版本后)的多功能架构组件,同时也可以提供一定的缓存服务功能。

Nginx是一个高性能web服务。应用场景:1、web服务2、正反向代理3、API(lua)

1、 WEB服务器:这是应用比较多的场景,配置虚拟主机提供HTTP
WEB服务。可以先通过动态/静态内容分离,而后为静态内容(html/css/js/图片等)提供HTTP访问功能;而动态内容可以整合代理模块,代理给上游服务器,来支持对外部程序的直接调用或者解析,如FastCGI支持PHP。
2、 反向代理服务器:这是应用非常多的场景,为后端服务器代理。接收客户端请求,根据负载均衡策略转发给后端多个上游服务器处理;然后再等待后端服务器返回请求响应,接收到后再返回给请求的客户端。

1.2 Nginx和apache的区别

Apache全称是apache http server,它是apache软件基金会的一个开源的网页伺服服务器软件。

Apache支持多模块,可以解析静态页面也可以解析动态页面。 扩展:静态页面有html、图片等,但是可以通过扩展脚本、模块来支持动态页面。

静态页面:不需要编程解析的。Html,javascript

动态页面:就需要进行解析的页面。Jsp,php。每个用户提交的请求不一样结果就不一样。

Nginx也是一款开源的http server,它是由俄罗斯人编写的轻量级的http服务。
但是nginx本身不支持生成动态页面,所以更多的是使用nginx来做反向代理和负载均衡。

Nginx使用异步非阻塞型的事件驱动的方法来处理请求的,而apache是通过同步阻塞型的方法来处理请求的。

Apache是一个进程处理一个请求,默认最高是256进程 Nginx是由一个master进程和多个worker进程组成

1.3 Nginx源码编译安装
安装依赖

yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

依赖包详解可参考:依赖包参考资料

下载源码包

wget http://nginx.org/download/nginx-1.14.0.tar.gz

解压

[root@localhost nginx-1.16.1]# tar -zxvf nginx-1.16.1.tar.gz -C /usr/local/

进入解压目录

[root@localhost nginx-1.16.1]# cd /usr/local/nginx-1.16.1

创建用户和用户组

[root@localhost nginx-1.16.1]# groupadd nginx
[root@localhost nginx-1.16.1]# useradd -g nginx nginx

编译

[root@localhost nginx-1.16.1]# ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-stream --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-threads

查看是否安装成功echo $?输出0为安装成功

 echo $?
0

安装

[root@localhost nginx-1.16.1]# make && make install

在这里插入图片描述
启动文件路径再你编译的时候生产的目录下

/usr/local/nginx/sbin
在这里插入图片描述
查询安装版本

[root@localhost sbin]# /usr/local/nginx/sbin/nginx -V

在这里插入图片描述
检测配置文件是否正确(一般修改完毕配置文件需要检测下是否配置正确)

[root@localhost sbin]# /usr/local/nginx/sbin/nginx -t

在这里插入图片描述
启动nginx服务并查看进程

[root@localhost sbin]# /usr/local/nginx/sbin/nginx
[root@localhost sbin]# ps -ef | grep nginx

在这里插入图片描述
停止服务运行

[root@localhost sbin]# /usr/local/nginx/sbin/nginx -s stop

在这里插入图片描述
重载(修改完配置文件,不关闭nginx服务,只重新加载配置文件)

[root@localhost sbin]# /usr/local/nginx/sbin/nginx -s reload

在这里插入图片描述
Nginx 配置默认配置路径

Nginx的主配置文件路径:
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf

Nginx日志文件路径:
[root@localhost ~]# cd /usr/local/nginx/logs/
Nginx前端代码路径:
[root@localhost ~]# cd /usr/local/nginx/html/

页面测试(nginx页面开启的是80端口)
首先要关闭防火墙和selinux

[root@localhost sbin]# systemctl stop firewalld;setenforce 0

访问nginx下默认页面
http://192.168.1.110/
在这里插入图片描述

注意:如果是普通用户进行安装,在编译的时候需要针指定编译安装路径

进入nginx安装目录nginx-1.16.1
修改configure 文件中的NGX_PREFIX,自动普通用户安装的路径

 NGX_PREFIX=${NGX_PREFIX:-/home/wuyue/nginx}

普通用户路径:–prefix=/home/wuyue/nginx,然后进行编译

./configure --user=nginx --group=nginx --prefix=/home/wuyue/nginx --with-stream --with-http_ssl_module --without-http_rewrite_module --with-http_realip_module --with-threads

安装

 make && make install

1.4 Nginx配置详解

  1. 清除浏览器缓存配置

expires 1h;一小时清理一次浏览器缓存
expires 1d;一天清理一次
在这里插入图片描述

  1. 编码格式,解决乱码情况
    在这里插入图片描述
  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

被生活耽误的旅行者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值