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 ...
随机推荐
- Idea搭建SpringMVC框架(初次接触)
公司转Java开发,做的第一个项目是SpringMVC框架,因为底层是同事封装,等完成整个项目,对SpringMVC框架的搭建还不是很了解,所以抽时间不忙的时候自己搭建了一个SpringMVC框架. ...
- Yarn的Linking dependencies特别慢的优化方法
通过以下方法,可以提升部分速度: 把项目文件夹添加进杀毒软件的白名单 把Yarn的缓存文件夹(yarn cache dir查看路径)添加进杀毒软件白名单 把Yarn的安装目录添加进杀毒软件白名单 把N ...
- vue框架中的日期组件转换为yyy-mm-dd格式
最近在用vue框架写一个app,这个是用到的日期格式转换,把下面的标准格式转换为字符串连接格式
- elasticsearch中 refresh 和flush区别(转)
elasticsearch中有两个比较重要的操作:refresh 和 flush refresh操作 当我们向ES发送请求的时候,我们发现es貌似可以在我们发请求的同时进行搜索.而这个实时建索引并可以 ...
- 实践中 XunSearch(讯搜)更新索引方案对比
检测PHP-SDK的运行条件(查看是否支持XunSearch) $prefix/sdk/php/util/RequiredCheck.php $prefix #替换成你的安装目录 使用 XunSe ...
- [f]智能获取浏览器版本UA信息的方法
var browser={ versions:function(){ var u = navigator.userAgent, app = navigator.appVersion; return { ...
- liunx_second_day
liunx-基本权限 1.文件和目录权限的区别 A.文件的权限:所有者,所属组,其他人 rwx,读,写,执行,没有权限就是- 第一组rwx:文件所有者的权限 第二组rwx:文件所属组的权限 第三组rw ...
- LCD_FSMC
/************************************************************************** * 文件名:LCD_FSMC.h * * 编写人 ...
- OC对象,自动释放池,OC与C语言的区别
在C语言中,编程都是面向过程的编程,每一个代码块都严格按照从上至下的顺序执行,在代码块之间同样也是这样, 但是在OC中往往不是这样,OC和C++.java等语言一样,都是面向对象的编程语言,在代码的执 ...
- spak数据倾斜解决方案
数据倾斜解决方案 数据倾斜的解决,跟之前讲解的性能调优,有一点异曲同工之妙. 性能调优中最有效最直接最简单的方式就是加资源加并行度,并注意RDD架构(复用同一个RDD,加上cache缓存).相对于前面 ...