1、Nginx介绍
Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。
Nginx是一款轻量级的Web服务器/反向代理服务器以及电子邮件代理服务器。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。
Nginx相较于Apache\lighttpd具有占有内存少,稳定性高等优势,并且依靠并发能力强,丰富的模块库以及友好灵活的配置而闻名。在Linux操作系统下,nginx使用epoll事件模型,得益于此,nginx在Linux操作系统下效率相当高。
2、Nginx作用
1.反向代理,将多台服务器代理成一台服务器
2.负载均衡,将多个请求均匀的分配到多台服务器上,减轻每台服务器的压力,提高服务的吞吐量
3.动静分离,nginx可以用作静态文件的缓存服务器,提高访问速度
?3、反向代理
是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。如
客户端(用户A)向反向代理服务器z发送请求,接着反向代理服务器Z将判断将向何处(原始服务器B)转交请求,获得原始服务器B返回的内容后,将获得的内容返回给客户端用户A。而客户端始终认为它访问的是原始服务器B而不是服务器Z。由于防火墙作用,只允许服务器Z进出,防火墙和反向代理共同作用保护了原始服务器B。
4、?正向代理?
正向代理是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器获取内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。客户端才能使用正向代理。
如客户端A(用户A,B)和原始服务器(服务器B)之间的服务器(代理服务器Z),为了从原始服务器获取内容,用户A向代理服务器Z发送一个请求并指定目标(服务器B),然后代理服务器Z向服务器B转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。
正向代理为防火墙内的局域网客户端提供了访问Internet的途径。还可以使用缓冲特性减少网络使用率。
5、nginx的源码安装编译?
nginx官方源码? ?http://nginx.org
nginx安装依赖gcc、openssl-devel、pcre-devel、zlib-devel软件库
./configure --prefix? --with;其中--prefix指的是安装路径,--with指的是安装本文件所依赖的库文件
?实验:
真机中:
scp /home/westos/Desktop/nginx-1.20.1.tar.gz root@172.25.70.1:/mnt
#把真机中已有的nginx-1.20.1给虚拟机1传输
虚拟机server1中:
cd ~
tar zxf /mnt/nginx-1.20.1.tar.gz
ls
cd nginx-1.20.1/
ls
下载其依赖性:
yum install -y gcc
yum install -y pcre-devel
yum install -y openssl-devel




./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
checking for OS
make
make install
ls
ll Makefile

?
cd objs/
ls
cd .. #返回nginx-1.20.1
cd conf/
ls
cd /usr/local/
ls
cd nginx/
ls
pwd---->/usr/local/nginx
cd sbin/
file nginx


pwd---->/usr/local/nginx/sbin
cd
which ngettext
which nginx
/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx #出现异常可以查看下是不是httpd把80端口占用了
ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/
echo $PATH
which nginx
nginx
nginx -s reload
cd /usr/local/nginx/logs/
ls


?
?总结:
在进行nginx源码编译必须解决其依赖性
若是nginx不能正常启动可以先排查下httpd服务是否吧80端口占用;若是占用则先关闭掉httpd服务就可以了
|