Nginx从安装到简单使用
一.什么是Nginx:
Nginx是一个高性能的HTTP和反向代理服务,也是一个IMAP/POP3/SMTP服务。
二.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步中--prefix所指定的文件夹中,再进入sbin文价夹中,执行./nginx
(在nginx文件夹中重启是./nginx -s reopen)
10.查看nginx是否启动,例如

nginx默认端口是80,所以直接访问ip地址,例如下图所示,即可知nginx启动成功

四.使用Nginx

1.静态资源文件夹里的文件可以直接在外部访问,例如

2.实现反向代理(可以不暴露真实IP地址)
修改nginx.conf配置文件

注意:上面那个箭头指向的地址,必须在主机hosts文件中设置地址映射(域名解析),如下图

重新加载配置文件
./nginx -s reload
测试:

如果反向代理没有成功,可以查看log日志,找到并进入logs文件夹,输入
cat error.log
例如下图

如果发现正常启动成功,却没有成功配置反向代理。可以看看是否是自己修改了正确的配置文件(注意,nginx解压后的conf文件夹中有一个配置文件,而nginx启动目录下的文件夹中有一个nginx.conf配置文件,还有一个nginx.conf.default配置文件,可以试着将三个配置文件都修改试试,如果是按照上面安装步骤,应该是只修改的是/usr/local/webserver/nginx/conf中的nginx.conf)
3.实现集群(使用nginx实现负载均衡)
负载均衡算法:
轮询机制:在配置文件http中添加 (请求会轮流转发到129和130两个服务器的tomcat服务器)
upstream backserver {
server 192.168.2.129:8080;
server 192.168.2.130:8080;
}
注意:proxy_pass指向的是backserver ,如http://backserver
权重(比例分配):
upstream backserver {
server 192.168.2.129:8080 weight=10; //129访问10次,130访问一次
server 192.168.2.130:8080 weight=1;
}
IP绑定:(随机绑定一个,而且绑定后一个ip地址就固定访问一个服务器了,可以解决session共享问题,可一旦该服务器挂了,会出现数据丢失)
upstream backserver {
ip_hash;
server 192.168.2.129:8080;
server 192.168.2.130:8080;
}
4.Nginx宕机容错机制
通过上述安装的Nginx默认是开启宕机容错机制的,比如说上面集群中server 192.168.2.129:8080挂掉,它会自动找130的服务器
如果想要添加宕机容错规则的话,可以在配置文件中的proxy_pass下面添加
proxy_connect_timeout ; #最大连接时间
proxy_send_timeout ; #最大发送时间
proxy_read_timeout ; #最大读取时间
Nginx从安装到简单使用的更多相关文章
- nginx的安装及简单负载均衡配置
Nginx 是一个很强大的高性能Web和反向代理服务器,它具有很多非常优越的特性.本人目前所在公司也使用nginx,主要用来做负载均衡服务器.同时也可以作为邮件代理服务器. 1. nginx的安装.本 ...
- Nginx的安装及简单配置
Nginx安装 1.下载相关组件 yum install -y gcc gcc-c++ #安装C/C++编译器 yum -y ins ...
- nginx 编译安装以及简单配置
前言 Nginx的大名如雷贯耳,资料太多了,网上一搜一大把,所以这里就不阐述nginx的工作原理了,只是简单的编译安装nginx,然后呢,简单配置一下下. 下载Nginx.安装 下载地址:http:/ ...
- ECS centos6.8系统下从nginx安装到简单网站上线配置操作的完整记录
1.准备工作 1.1已购买阿里云云服务器ECS 1.2域名已购买并解析成功 1.3安装有远程链接工具Xshell和文件传输工具Xftf,并链接上ECS实例 2.安装nginx(在Xshell操作) 2 ...
- Nginx + ngx_lua安装测试【CentOs下】
最近打算搞搞nginx,扒着各位先驱的文章自己进行测试下,中间过程也是错误不断,记录一下,以备使用. nginx的安装挺简单的,主要还是研究下一些第三方的模块,首先想试下初始化 ...
- 快速掌握Nginx(一) —— 安装Nginx和简单配置虚拟主机
Nginx安装和简单配置虚拟主机 1 Nginx简介 Nginx是近几年最火热的http.反向代理服务器,百度阿里等互联网公司也都在使用Nginx,它也可以用作邮件代理服务器.TCP/UDP代理服务器 ...
- nginx之旅:安装及简单部署
安装之前最好了解一下nginx,参考nginx百度百科吧,下面这一句话基本概括了nginx的基本功能 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 ...
- Nginx在linux下安装及简单命令
安装环境:Centos7 创建目录及切换至目录 # mkdir /usr/local/nginx # cd /usr/local/nginx/ 下载nginx包,访问http://nginx.org下 ...
- nginx的安装
1,,nginx的安装 为什么使用nginx我就不多说了,很优秀的,请再行google 在安装前,先安装pcre,安装zlib,安装openssl,以及一些其他包 yum install -y gcc ...
随机推荐
- 视频软件——ffmpeg
1.官网下载地址:http://ffmpeg.org/download.html ffplay.exe ffplay是用于播放的应用程序. ffplay name.mp4 ffprobe.exe ff ...
- confluent kafka connect remote debugging
1. Deep inside of kafka-connect start up To begin with, let's take a look at how kafka connect start ...
- Apache三种工作模式详解
Apache HTTP服务器被设计为一个强大的.灵活的能够在多种平台以及不同环境下工作的服务器.这种模块化的设计就叫做“多进程处理模块”(Multi-Processing Module,MPM),也叫 ...
- html的css背景图的repeat
HTML里background-image中,可以设置background-repeat实现平铺,前面博文中关于css样式换行的(相关博文:超文本css样式换行),其中有个三个div组合的,中间的di ...
- python迭代器、生成器、装饰器之装饰器
装饰器...... 定义:本质是函数,为其他函数添加附加功能 原则: 1.不能修改被装饰的函数的源代码 2.不能修改被装饰函数的调用方式 仔细观察下面代码,看看有什么发现. 内嵌函数+高阶函数+闭包= ...
- vue-slicksort拖拽组件
vue-slicksort拖拽组件 安装 通过npm安装 $ npm install vue-slicksort --save 通过yarn安装 $ yarn add vue-slicksort 插件 ...
- vue时间戳转换(10位数)/(13位)
<template> <!-- time为时间戳 --> <div>{{time | formatDate}}</div> <!-- 结果为 20 ...
- 【miscellaneous】基于gstreamer的实时转码
目标是实现一个实时转码,可用于IPTV提供节目源.相关工作在ubuntu操作系统下进行.需要对源代码进行修改的时候,直接采用apt-get source命令获取源代码,根据需要进行修改,然后安装,这样 ...
- in-place数据交换
实现in-place的数据交换 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 经典的排序问题 问题描述 一个数组中包含两个已经排好序的子数组,设计一个in- ...
- Django_03_模板的使用
{{ }} 变量 list类型用 'lst.索引',且不支持倒序索引,即不能识别lst.-1 dic类型用 'dic.key',去取对应的value,不支持{} 对于实例对象,通常自己重写__str_ ...