从最早期的apache非常普及,到现在nginx的出现以及普及,原因是user用户增加——> apache (服务器性能增加,而根据摩尔定理,服务器的处理能力增加和你的配置不成正比)我们不能白白耗费这么好的配置,——>此时nginx就产生了。
nginx的缺点:nginx无法处理动态页面,他在做web服务器时做好还是做静态资源服务器,因为处理动态页面时他还要把资源交给apache来处理
nginx的优点:支持高并发,高性能,可扩展,内存消耗少,配置文件简单,成本低,health check(内置健康检查功能),稳定性高,模块化(可添删模块)
nginx应用场景
(1)做html静态资源
(2)做reverse proxy(反向代理)实现cache(缓存)和lb(负载均衡)
(3)做API(应用程序接口),实现API用(openresty)
在nginx官网中下载文档版本的安装包
解压:
预编译:
make编译:
make install:
nginx的执行:
cd /usr/local/nginx/sbin/ ##进入nginx程序所在的目录
在网页中访问一下nginx:
我们也可以修改一下默认发布页面:
现在将1.18.0版本的nginx更新为1.17版本的:
首先下载1.17版本的原码安装包,解压
现在再来查看一下版本就是1.17版本了
如果更新版本有问题,我们需要回退到之前的版本:
再来查看一下版本就好了
【注意】:如果更新的版本有问题,则不会备份这个有问题版本的内容,直接退回到之前的版本
为什么要对日志进行切割?
nginx可以作为反向代理服务器,它一天接收的请求是非常非常多的,这样会导致日志文件非常非常大,如果日志大小超过内存,那这个日志是打不开的,服务器会被卡死,日志过大对于查看也是不方便的,所以我们需要对日志进行切割。
如何切割日志?
error.log文件也是相同的切割法,可以把这些写在一个脚本里面,每天定时定点的去执行,这样就实现了对日志的切割。
cd /usr/local/nginx/conf ###进入nginx配置目录
vim nginx.conf ##编辑nginx的配置文件
前面我们启动nginx都是以脚本的形式:/usr/local/nginx/sbin/nginx
启动服务也可以使用systemctl 的方式:
首先官方系统自带的服务他的启动脚本默认放在/usr/lib/systemd/system目录下
我们自己安装的服务不推荐放在上面那个目录下,官方推荐放在/etc/systemd/system
vim /etc/systemd/system/nginx.service ##编辑nginx.service服务启动脚本
ps ax ##查看进程状态
/usr/local/nginx/sbin/nginx -s stop ##用脚本的方式关闭nginx服务
ps ax ##查看进程状态
systemctl start nginx.service ##用systemctl 的方法开启nginx服务
ps ax ##查看进程状态
vim /usr/local/nginx/conf/nginx.conf ##打开配置文件