nginx 系列 1 linux下安装以及配置IIS分发
一. 安装
操作系统:centos 7 ,nginx版本1.12.2,windows server 2008 iis
1.1 确认nginx所依赖的工具
Zlib: nginx提供gzip模块,需要zlib库支持,Openssl: nginx提供ssl功能, Pcre: 支持地址重写rewrite功能。如果没有安装,在root下使用yum来安装。
-- 检测是否安装依赖工具包
[root@xuegod64 hsr]# yum list | grep zlib
[root@xuegod64 hsr]# yum list | grep openssl
[root@xuegod64 hsr]# yum list | grep pcre
1.2 安装nginx
下载了nginx-1.12.2.tar.gz包后,放在了linux系统目录/home/hsr/下。
--解压
[root@xuegod64 hsr]# tar -xzvf nginx-1.12..tar.gz
[root@xuegod64 hsr]# cd nginx-1.12.
--编译
[root@xuegod64 nginx-1.12.]# ./configure
--安装
[root@xuegod64 nginx-1.12.]# make
[root@xuegod64 nginx-1.12.]# make install
configure由shell脚本编写,该命令做了大量“幕后”工作,包括检测操作系统内核和已经安装的软件,参数的解析,中间目录的生成以及根据各种参数生成一些C源码文件,makefile文件等
configure后面的参数分四大类型,1.路径相关的参数,2.编译相关的参数。3.依赖软件的相关参数。4模块相关的参数
1.3 生成系统运行的nginx用户
/*
使用-u 来生成用户ID 8000,
-s 指定用户登入后所使用的shell,
nginx是指系统用户
*/
[root@xuegod64 ~]# useradd –u –s /usr/ sbin/nologin nginx
-- 查看nginx用户信息
[root@xuegod64 sbin]# cat /etc/passwd
nginx:x::::/home/nginx:/sbin/nologin
1.4 启动nginx
[root@xuegod64 sbin]# pwd
/usr/local/nginx/sbin
[root@xuegod64 sbin]# ./nginx -c /usr/local/nginx/conf/nginx.conf
上面nginx服务已经启动成功,后面可以把/usr/local/nginx/sbin目录添加到path 全局中,就不用在定位到/usr/local/nginx/sbin下。默认端口是80(确认防火墙已开通80端口)。
二进制文件路径为/usr/local/nginx/sbin/nginx, 配置文件路径为/usr/local/nginx/conf/nginx.conf。
直接执行/usr/local/nginx/sbin/nginx会读以默认路径下的配置文件/usr/local/nginx/conf/nginx.conf
实际上,没有显示提定nginx.conf配置文件路径时,将打开在configure命令执行时使用-conf-path=PATH指定的nginx.conf文件。上面使用-c 指定了配置文件路径。
--查看nginx进程
[root@xuegod64 sbin]# ps -ef | grep nginx
最后查看nginx的运行状态
[root@xuegod64 sbin]# curl http://192.168.2.101:80
如果没有出现welcome to nginx,需要查看nginx的日志 (/usr/local/nginx/logs),在要分发的客户端(iis服务)拼通 telnet 192.168.2.101 80。 也可以在浏览器里输入地址查看状态,如下:
1.5 停止服务
快速停止服务与kill一样
/usr/local/nginx/sbin/nginx -s stop
优雅停止服务
/usr/local/nginx/sbin/nginx -s quit
1.6 日志文件回滚
/usr/local/nginx/sbin/nginx -s reopen
先把当前日志文件改名或转移,再使用命令重新打开日志文件,这个功能使得日志文件不至于过大
二. 配置IIS分发
2.1 编辑nginx.conf文件(可以先备份一下)
(1) 首先注释掉nobdy用户,添加 nginx用户用户组,如下脚本
#user nobody;
user nginx nginx;
worker_processes ;
(2) 添加分发策略
在http模块里找到server 节点,里面的location节点,Location 是网站的根目录, 在location节点里,添加分发策略, 如下图(注意if与 大括号{之间要有空隔), location会根据用户的请求中的url,来匹配url表达式
location / {
root html;
index index.html index.htm;
if ($request_uri ~* \.html$) {
proxy_pass http://htmlservers;
}
if ($request_uri ~* \.aspx$){
proxy_pass http://aspxservers;
}
proxy_pass http://picservers;
}
注意上面的 uri 跟url一样,统一资源占位符例如如果进来是已.html结尾, 全部转到 http://htmlservers服务器上,还有aspxservers服务器,最后是picservers服务器。(名字自己启,相当一个服务器池)。 最后picservers相当于else。
(3) 定义负载设备的ip(这里是IIS服务器上的50,51 ip),添加位置在http模块里的最后一行,后期根据自己的实际ip,进行更改,保存nginx.conf文件退出
upstream htmlservers{
server 192.168.2.50:;
server 192.168.2.51:;
}
upstream aspxservers{
server 192.168.2.50:;
server 192.168.2.51:;
}
upstream picservers{
server 192.168.2.50:;
server 192.168.2.51:;
} }
(4) 检查配置是否正确,再重新加载配置文件并生效
[root@xuegod64 sbin]# pwd
/usr/local/nginx/sbin
[root@xuegod64 sbin]# ./nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@xuegod64 sbin]# ./nginx -s reload
nginx 系列 1 linux下安装以及配置IIS分发的更多相关文章
- Linux下安装与配置Nginx
一.准备 Nginx版本:nginx-1.7.7.tar.gz 请自行到官网下载对应的版本. 二.步骤 ♦在Linux新建一个queenLove用户 [root@localhost /]# use ...
- Linux下安装和配置JDK与Tomcat(升级版)
在这个版本 Linux下安装和配置JDK与Tomcat(入门版) 的基础上优化升级 1.下载相关软件 apache-tomcat-6.0.37.tar.gz jdk-6u25-linux-i586-r ...
- [Linux]Linux下安装和配置solr/tomcat/IK分词器 详细实例二.
为了更好的排版, 所以将IK分词器的安装重启了一篇博文, 大家可以接上solr的安装一同查看.[Linux]Linux下安装和配置solr/tomcat/IK分词器 详细实例一: http://ww ...
- 在linux下安装并配置mysql数据库
在linux下安装并配置mysql数据库 工具/原料 MySql5.6 CentOS 方法/步骤 1 查找以前是否安装有mysql,使用下面命令: rpm -qa|grep -i mysql ...
- Linux(4)- centos7安装python3、Linux下安装、配置virtualenv、确保开发环境的一致性、虚拟环境之virtualenvwrapper、vim
一.centos7安装python3 1.下载python3的源码包 下载地址:https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz cd ...
- Linux下安装mantis配置指南【转】
转自:http://blog.csdn.net/xabc3000/article/details/6858229 目录(?)[-] Linux下安装mantis配置指南 配置Linux下的Apache ...
- CentOS linux下安装和配置Apache+SVN(用浏览器http方式访问SVN目录)
在CentOS linux下安装SVN,我们可以进行以下步骤: 第一步:安装CentOS Linux操作系统,并在CentOS安装进行的同时,自定义安装这一步,一定要勾选Subversion(在“开发 ...
- Nginx(一):linux下安装nginx与配置
linux系统为Centos 64位 准备目录 [root@instance-3lm099to ~]# mkdir /usr/local/nginx [root@instance-3lm099to ~ ...
- [Linux]Linux下安装和配置solr/tomcat/IK分词器 详细实例一.
在这里一下讲解着三个的安装和配置, 是因为solr需要使用tomcat和IK分词器, 这里会通过图文教程的形式来详解它们的安装和使用.注: 本文属于原创文章, 如若转载,请注明出处, 谢谢.关于设置I ...
随机推荐
- web端常见测试点
由于web端应用于用户直接相关,又通常需要承受长时间的大量操作,因此web项目的功能和性能都必须经过可靠的验证.web端测试常见的有界面测试.功能测试.性能测试.可用性(接口)测试.兼容性测试.安全性 ...
- Java-常用工具方法
一 Json转换 1 输出组装好的json ObjectMapper mapper = new ObjectMapper(); try { String requiredJson = mapper.w ...
- H5新特性---Web Worker---Web Stroage
今天的目标 3.1:h5新特性八--Web Worker---代码就3行 程序:program 存储在外存(磁盘)中代码 进程:Process/Task 将程序调用内存中,分配空间 线程:Thread ...
- Python从入门到精通之Third!
Python运算符 算数运算符:+ - * / % // ** 比较运算符:== > < >= 大于等于 & ...
- SpringBoot_定制banner
SpringBoot项目在启动时会打印一个banner 这个banner 是可以定制的, 在resources 目录下创建一个banner.txt 文件,在这个文件中写入的文本将在项目启动时打印出来. ...
- 贪心-Wooden Sticks
先将火柴按照长度(或重量)优先排序,在不断遍历数组,找出其中重量(长度)递增子序列,并标记 Problem Description There is a pile of n wooden sticks ...
- Codeforces Round #485 (Div. 2) D. Fair
Codeforces Round #485 (Div. 2) D. Fair 题目连接: http://codeforces.com/contest/987/problem/D Description ...
- js实现上传图片回显功能
用到h5技术 <img id="headimg" src="<%=path%>/resources/images/icon4.png" sty ...
- 感知机、logistic回归 损失函数对比探讨
感知机.logistic回归 损失函数对比探讨 感知机 假如数据集是线性可分的,感知机学习的目标是求得一个能够将正负样本完全分开的分隔超平面 \(wx+b=0\) .其学习策略为,定义(经验)损失函数 ...
- entity framework 上下文对象跟踪相关
entity framework 上下文对于对象的跟踪有2中方式进行控制,第一种从数据库查询但不加载到上下文. 这里可以用到.AsNoTracing()方法. 这里用到的是实体(entity)在上下文 ...