介绍
Nginx是一个高性能的HTTP和反向代理服务器
- Apache和Nginx的优缺点比较
Nginx优点
- 轻量级:同样的web服务,比Apache占用更少的内存及资源
- 抗并发:Nginx处理请求是异步非阻塞的,而Apache是阻塞型的,
- 在高并发下Nginx保持低资源消耗高性能
- 社区活跃,各种高性能模块出品迅速
Apache优点
- rewrite比Nginx的rewrite强大
- 模块超多,bug比Nginx相对少,超稳定
性能要求选择上:
- 在只求稳定的情况下使用Apache
- 在需要性能的web服务使用Nginx
服务器选择上:
- Nginx使用更少的资源,支持更多的并发连接,安装简单,配置简洁
核心的区别在于:
- Apache是同步多进程模型,一连接对应一进行
- Nginx是异步的,多个连接(百万级)可以对应一进程,负载能力强
请求处理上:
- Nginx适合处理静态请求(静态处理性能比Apache高3倍以上)和反向代理
- Apache适合处理动态代理和复杂的功能(拥有超多的模块)
- Nginx的主要特性
- 处理静态文件,索引文件(自动索引);打开文件描述符缓存
- 无缓存的反向代理加速,简单的负载均衡和容错(FastCGI)
- 模块化结构
- 支持SSL和TLSSNI
- 专为性能开发的,实现上非常重视效率,能经受高负载的考验
- 采用分阶段资源分配技术,它的cup与内存占用率非常低,类似DOS攻击对Nginx无效
- 支持热部署,启动容易,不需要重启的情况下能对软件版本进行升级
- 采用master-slave模型,充分利用SMP优势,减少工作进程在磁盘io的阻塞延迟
-
Nginx的三种通配符号
= 精确匹配
- ~ 模糊匹配,区分大小写
- ~* 模糊匹配,不区分大小写
- Server可以有多个
- Location 可以有多个
nginx 启动nginx
nginx -s stop 关闭nginx
nginx -s reload 重启nginx
ps -ef | grep nginx 查看nginx主进程
查看防火墙状态:firewall-cmd --state
开启状态:running 关闭状态:not running
开启防火墙:systemctl start firewalld.service
关闭防火墙:systemctl stop firewalld.service
重启防火墙:systemctl restart firewalld.service
设置开机自启:systemctl enable firewalld.service
永久关闭防火墙:systemctl disable firewald.service
重新载入:firewall-cmd --reload
查看:firewall-cmd --zone=public --query-port=80/tcp
删除:firewall-cmd --zone=public --remove-port=80/tcp --permanent
查看开启的所有端口:firewall-cmd --list-ports