是一个HTTP和反向代理的服务器,特点为:占有内存少,并发能力强。专门为性能优化而开发
客户不能直接访问网络中的资源,必须通过代理服务器来访问,这种代理就是正向代理。
访问网站中的服务器时,不会暴露真实的服务器,暴露的是代理服务器的地址。也就是说如果访问199.0.0.1:80(随便写的)服务器时不会显示该服务器的地址而显示:www.baidu.com配置的域名(或者是代理的服务器地址)。
通过代理服务器把多个请求平均的分担到不同的服务器
把动态界面和静态界面通过不同的服务器来解析。
如果出现pcre-8.32-17.el7.x86_64类似的则安装过了。 安装pcre:
下载: wget https://netix.dl.sourceforge.net/project/pcre/pcre/8.40/pcre-8.40.tar.gz 解压: tar -zxvf pcre-8.40.tar.gz 进入目录进行编译: make 安装: make install 安装pcre报c++编译器错误: yum install gcc-c++ 安装openssl和zlib查看是否安装openssl:
openssl version -a查看是否安装zlib:
yum list | grep zlib* yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel 安装Nginx下载地址
解压:
tar -xzvf nginx进入解压好的文件下:
./configure make && make install 启动nginx进入安装目录下的sbin目录执行./nginx
使用ps -ef | grep nginx 查看进程
查看conf/nginx.conf 查看端口号(默认为80)
在操作nginx时需要先进入安装目录下的sbin文件下。
查看版本号./nginx -v启动nginx./nginx关闭nginx ./nginx -s stop重新加载nginx./nginx -s reload配置文件在安装目录下的/conf/nginx.conf,由三部分组成:
全局块 指的是nginx处理并发请求的值,值越大支持的并发就越多 worker_processes 1; events块 主要是与用户网络的连接,值最大的连接数是多少。 worker_connections 1024 http块 分为http全局块和server块。根据访问路径不同跳转到不同的端口。 进入nginx配置文件中: 新增一个server
server { listen 80; # Linux的IP地址 server_name localhost location ~/a/ { proxy_pass http://127.0.0.1:8089: } location ~/b/ { proxy_pass http://127.0.0.1:8088: }配置的意思是如果访问路径中包含/a/就访问8089端口,如果有/b/就访问8088端口
将请求分担到不同的服务器。 修改配置文件: 在http:下添加
# myserver 是自己起的名字 upstream myserver{ server 服务器1:端口; server 服务器2:端口; } #再在location里面添加: proxy_pass : http://myserver;分配策略:
轮询(默认):按照请求的时间顺序逐一的分配到不同服务器。down掉的服务器自动剔除。weight(权重):给每个服务器指定权重,权重越高处理的请求就越高;配置方法: upstream myserver{ server 服务:端口 weight = 1; server 服务:端口 weight = 100; } ip_hash:每个请求按照ip进行分配,每个ip固定访问一个服务器; 配置方法: upstream myserver{ ip_hash; server 服务:端口; server 服务:端口; } fair(第三方) 按照响应时间来分配,消耗时间短的优先分配; 配置方法: upstream myserver{ server 服务:端口; server 服务:端口; fair; }在nginx配置文件中修改 静态文件:
server { listen 80; # Linux的IP地址 server_name localhost; location /www/ { # 文件目录 /data/www/ root /data/; inde index.html index.htm; } location /image/ { root /data/; autoindex on; }