Nginx从安装到使用
一.什么是Nginx:
Nginx是一个高性能的HTTP和反向代理服务,也是一个IMAP/POP3/SMTP服务。
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。二.Nginx作用:
反向代理,集群,虚拟服务器,负载均衡,动静分离,解决跨域问题等
三.安装Nginx:
1.链接 https://nginx.org/en/download.html,如下
2.linux和windows版本下载完后解压(windows版本解压即可)
以linux为例,解压后得到
3.进入文件夹后可以看到目录
4.执行
./configure
5.如果出现错误如下,则
(1)安装编译工具及库文件
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
(2)安装PCRE,链接https://sourceforge.net/projects/pcre/files/pcre/
下载PRCE安装包并解压,例如下图
进入解压后的文件夹,找到configure并执行
cd prce-8.43.tar.gz
./configure
安装并查看prce版本
make && make install
pcre-config --version
6.再次进入nginx-1.14.2文件夹,执行
./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.43
7.再执行make(注意上面那行代码,这里默认会去找/usr/local/src/ 下的prce-8.43文件夹),然后make install完成安装。
8.查看nginx版本(上面指定的目录)
/usr/local/webserver/nginx/sbin/nginx -v
例如
9.启动nginx,进入第6步中指定的文件夹中,再进入sbin文价夹中,执行./nginx
(在nginx文件夹中重启是sbin/nginx -s reopen,关闭 sbin/nginx -s stop,直接在sbin文件夹中./nginx -s reopen)
10.查看nginx是否启动,例如
nginx默认端口是80,所以直接访问ip地址,例如下图所示,即可知nginx启动成功
四.使用Nginx
1.静态资源文件夹里的文件可以直接在外部访问,例如
2.实现反向代理(不暴露真实IP地址)
修改nginx.conf配置文件
重新加载配置文件
./nginx -s reload
测试:
如果反向代理没有成功,可以查看log日志,找到并进入logs文件夹,输入
cat error.log
例如下图
如果发现正常启动成功,却没有成功配置反向代理。可以看看是否是自己修改了正确的配置文件(注意,nginx解压后的conf文件夹中有一个配置文件,而nginx启动目录下的文件夹中有一个nginx.conf配置文件,还有一个nginx.conf.default配置文件,可以试着将三个配置文件都修改试试,如果你是按照上面安装步骤,应该修改的是/usr/local/webserver/nginx/conf中的nginx.conf和nginx.conf.default)
3.实现集群(使用nginx实现负载均衡)
负载均衡算法:
轮询机制:在配置文件中添加(请求会轮流转发到129和130两个服务器)
upstream backserver { server 192.168.2.129; server 192.168.2.130; }
权重(比例分配):
upstream backserver { server 192.168.2.129 weight=10; //129访问10次,130访问一次 server 192.168.2.130 weight=1; }
IP绑定:(一个ip地址就固定访问一个服务器了,但可以解决session共享问题)
upstream backserver { ip_hash; server 192.168.2.129; server 192.168.2.130; }
