从最先期的apache很是普及,到如今nginx的出现以及普及,缘由是user用户增长——> apache (服务器性能增长,而根据摩尔定理,服务器的处理能力增长和你的配置不成正比)咱们不能白白耗费这么好的配置,——>此时nginx就产生了。html
nginx的缺点:nginx没法处理动态页面,他在作web服务器时作好仍是作静态资源服务器,由于处理动态页面时他还要把资源交给apache来处理
nginx的优势:支持高并发,高性能,可扩展,内存消耗少,配置文件简单,成本低,health check(内置健康检查功能),稳定性高,模块化(可添删模块)nginx
nginx应用场景
(1)作html静态资源
(2)作reverse proxy(反向代理)实现cache(缓存)和lb(负载均衡)
(3)作API(应用程序接口),实现API用(openresty)web
在nginx官网中下载文档版本的安装包
解压:
预编译:
make编译:
make install:
nginx的执行:apache
cd /usr/local/nginx/sbin/ ##进入nginx程序所在的目录
在网页中访问一下nginx:
咱们也能够修改一下默认发布页面:
vim
如今将1.18.0版本的nginx更新为1.17版本的:
首先下载1.17版本的原码安装包,解压
如今再来查看一下版本就是1.17版本了
若是更新版本有问题,咱们须要回退到以前的版本:
再来查看一下版本就行了
缓存
【注意】:若是更新的版本有问题,则不会备份这个有问题版本的内容,直接退回到以前的版本bash
为何要对日志进行切割?
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 ##打开配置文件