您的位置:首页 > 运维架构 > Nginx

CentOS7.0安装Nginx 1.7.4

2017-03-02 11:08 337 查看
CentOS7.0安装Nginx 1.7.4 配置教程

一、安装准备

首先由于nginx的一些模块依赖一些lib库,所以在安装nginx之前,必须先安装这些lib库,这些依赖库主要有g++、gcc、openssl-devel、pcre-devel和zlib-devel 所以执行如下命令安装

$ yum install gcc-c++

$ yum install pcre pcre-devel

$ yum install zlib zlib-devel

$ yum install openssl openssl--devel

二、安装Nginx

安装之前,最好检查一下是否已经安装有nginx

$ find -name nginx

如果系统已经安装了nginx,那么就先卸载

$ yum remove nginx

首先进入/usr/local目录

$ cd /usr/local

从官网下载最新版的nginx

$ wget http://nginx.org/download/nginx-1.7.4.tar.gz
解压nginx压缩包

$ tar -zxvf nginx-1.7.4.tar.gz

会产生一个nginx-1.7.4 目录,这时进入nginx-1.7.4目录

$ cd nginx-1.7.4

接下来安装,使用--prefix参数指定nginx安装的目录,make、make install安装

$ ./configure $默认安装在/usr/local/nginx

$ make

$ make install

如果没有报错,顺利完成后,最好看一下nginx的安装目

$ whereis nginx

安装完毕后,进入安装后目录(/usr/local/nginx)便可以启动或停止它了。

到此,使用CentOS安装nginx已经完成了,其实看看还是蛮简单的。

安装和部署

1. 安装

1) 从Nginx官网下载页面(http://nginx.org/en/download.html)下载Nginx最新版本(目前是1.5.13版本)安装包;

2) 解压后复制到部署目录。

2. 启动和停止Nginx

Nginx目前只支持命令行操作,操作前先进入Dos命令环境,并进入Nginx部署目录。

1) 启动Nginx:start nginx

2) 停止Nginx:nginx -s stop

3) 修改配置后重启:nginx -s reload

这三个命令可分别做成bat文件,放在部署目录下,方便后续操作。

start nginx.bat文件内容:start nginx

stop nginx.bat文件内容:nginx -s stop

reload nginx.bat文件内容:nginx -s reload

3. 反向代理配置

修改部署目录下conf子目录的nginx.conf文件(如nginx-1.5.13\conf\nginx.conf)内容,可调整相关配置。

反向代理配置示例:

location / {

#设置主机头和客户端真实地址,以便服务器获取客户端真实IP

proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

#禁用缓存

proxy_buffering off;

#设置反向代理的地址

proxy_pass http://192.168.1.1;
}

代理地址根据实际情况修改。

4. 负载均衡配置

nginx 的 upstream默认是以轮询的方式实现负载均衡,这种方式中,每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。

另外一种方式是ip_hash:每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。

负载均衡配置示例:

upstream backend {

#ip_hash;

server 192.168.1.251;

server 192.168.1.252;

server 192.168.1.247;

}

server {

listen 80;

server_name trffweb;

location / {

#反向代理的地址

proxy_pass http://backend;
}

}

Upstream命名和服务器地址根据实际情况修改。

5. 完整配置示例

nginx.conf:

worker_processes 1;

events {

worker_connections 1024;

}

http {

include mime.types;

default_type application/octet-stream;

sendfile on;

keepalive_timeout 65;

upstream backend {

#ip_hash;

server 192.168.1.251;

server 192.168.1.252;

server 192.168.1.247;

}

server {

listen 80;

server_name 2;

location / {

#设置主机头和客户端真实地址,以便服务器获取客户端真实IP

proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

#禁用缓存

proxy_buffering off;

#反向代理的地址

proxy_pass http://backend;
}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: