01
高性能的Http和反向代理服务器
IMAP/POP3/SMTP等邮件代理服务器
代理:
正向代理: 客户端client, 通过代理服务器proxy,访问远程服务器server
| client -> proxy | -> server
从客户端的角度, 是知道proxy的存在 (代理服务在客户端一边,用户能够感知)
场景:- 可以访问原来无法访问的自由
- 做缓存使用, 加快访问速度
- 对客户端授权或记录访问信息等
反向代理: 服务器通过代理服务接收连接请求, 然后在转发给内部网络的服务器, 将服务器的结果返回给客户端
客户端不知道proxy的存在, 由服务端操作proxy (代理服务在服务端一边,用户不感知)
client -> | proxy - server |
场景:- 保证内网的安全, 阻止web攻击
- 负载均衡, 优化网站的负载(处理能力)
查看进程: ps -ef|grep nginx
关闭: nginx -s stop
查看目录: pwd
02
启动: nginx
关闭: nginx -s stop
关闭(通过结束进程): kill + 参数 + pid
- 启动: nginx
- 关闭: nginx -s stop
杀死进程: kill + 参数 + pid
- kill -9 pid 强制停止服务
- kill -TERM pid 快速停止服务
- kill -QUIT pid 平缓停止服务
- nginx -h
nginx -s 信号处理命令(stop,quit,reopen,reload)
- nginx -s reload
03配置
三部分: 全局块、events块、http块
全局块:
全局指令, 指定运行时的用户组、进程id存放位置、日志存放位置、worker process数量等
# 配置用户或者用户组
# user nobody;
# 允许生成的进程数
worker_processes 1;
## 日志路径设置 可以配置级别
# debug | info | notice | warn | error | crit
# error_log logs/error.log;
# error_log logs/error.log notice;
# error_log logs/error.log info;
# 存储进程id的文件地址
# pid logs/nginx.pid;
events块
影响nginx服务器和用户网络连接的配置,
比如每个进程的最大连接数, 选取那种事件驱动模型, 以及在网络连接过程中, 是否开启多个, 是否序列化等待
events {
# 每个进程的最大连接数
worker_connections 1024;
}
http块
配置代理、缓存、日志等绝大部分功能的地方, 可以包含(潜逃)多个server块,
不同的server可以对应不同的域名(虚拟主机)
虚拟主机: 同一台nginx服务器, 支持多个网站运行, 每个虚拟主机之间都相互独立, 具有完整功能
http {
# 对应虚拟主机的配置
server{
# 监听端口
listen 80;
# 监听域名
server_name localhost;
# 定位出路径或文件地址
location / {
# 相对路径
root html;
# 默认跳转的首页地址
index index.html index.htm
}
}
server{
}
}
配置置顶域名(www.heheee123.com)