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 ...
随机推荐
- html 页面 判断第一个反应的网站并进行跳转 模仿CDN
<!DOCTYPE html><html><head><meta charset="gb2312"><meta http-eq ...
- Latex引用\ref
在等式/图/定理等后面加\label{name} 正文引用方法:等式使用 \eqref{name},非等式引用可使用\ref{name}.
- explicit_defaults_for_timestamp引发的狗血剧情
今天就碰到了一个较初级的问题,居然为找这个参数花了好半天时间,深以为不齿.需求是这样的,有个表的某个字段需要从datetime改成timestamp类型.原结构如下:create table tmp1 ...
- Day09 (黑客成长日记) 爬虫入门
爬虫的基本流程: 发起请求通过HTTP库向目标站点发起请求,也就是发送一个Request,请求可以包含额外的header等信息,等待服务器响应 获取响应内容如果服务器能正常响应,会得到一个Respon ...
- C++输出格式
C++输出格式 C++中默认输出有效位数是6位,即 则输出: 221.111.11011199967 //6位有效数字,自动截取保存六位1.99967e+006 //六位以上且无法省略显示将会变为指数 ...
- 有哪些知名的公司在用Python
谷歌:Google App Engine.code.Google.com.Google earth.谷歌爬虫.Google广告等项目都在大量使用Python开发 CIA:美国中情局网站就是用Pytho ...
- JAVA课程设计---学生基本信息管理系统
1.团队课程设计博客链接 http://www.cnblogs.com/zyjjj/p/7061880.html 2.个人负责模块或任务说明 函数 功能说明 Search 查找学生信息,分为两种查找方 ...
- mysql中加入海量数据
delimiter // create procedure m() begin declare num int; set num=1; while num < 100000 insert int ...
- Codeforces831B Keyboard Layouts
B. Keyboard Layouts time limit per test 1 second memory limit per test 256 megabytes input standard ...
- 1.Float精度在JS的解决方法
最近做了一个有关折扣价的计算的功能,所有的运算都是在前台通过js来做,做完之后经过手工核算发现了一个问题,当时做的一个例子是10*0.94,按照我们正常的思维,这个结果应该是9.4,但是在js中的计算 ...