您的位置:首页 > 运维架构 > 反向代理

Nginx反向代理服务器安装与配置

2017-07-25 07:31 886 查看
​一、Nginx简介

1)Nginx是什么?

Nginx是一款轻量级Web服务器、也是一款反向代理服务器

2)Nginx能干什么?

Nginx能干的事情很多,这里简要罗列一些:

(1)可直接支持Rails和PHP的程序

(2)可作为HTTP反向代理服务器

(3)作为负载均衡服务器

(4)作为邮件代理服务器

(5)帮助实现前端动静分离

3)有什么特点?

(1)高稳定

(2)高性能

(3)资源占用少

(4)功能丰富

(5)模块化结构

(6)支持热部署

二、Nginx安装

       Linux:安装环境、安装步骤、安装命令、验证

安装系统环境:CentOS 6.8 64位

安装版本:1.10.2

安装步骤:

安装gcc(命令:yum install gcc)

备注:可以输入gcc -v查询版本信息,看系统是否自带安装

安装pcre(命令:yum install pcre-devel)

安装zlib(命令:yum install zlib zlib-devel)

安装operssl(命令:yum install openssl openssl-devel)

下载源码包,选择稳定版本,解压缩安装(http://www.nginx.org/)

也可以使用命令下载:wget http://nginx.org/download/nginx-1.10.2.tar.gz或访问:http://learning.happymmall.com/nginx/
下载完成后,解压:tar -zxvf nginx-1.10.2.tar.gz

Nginx安装:进入nginx目录之后执行 ./configure

1)也可以指定安装目录,增加参数 --prefix=/usr/nginx

2)如果不指定路径,可以通过whereis nginx进行查询

3)默认安装在/usr/local/nginx

继续执行:make-->make install

备注:如需支持ssl,才需安装openssl

综合命令:yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

    Windows:安装环境、安装步骤、安装命令、验证

安装系统环境:Windows7 64位

安装版本:1.10.2

安装步骤:

下载

解压缩

运行nginx.exe,通过双击图标或者cmd命令行运行

三、Nginx常用命令

测试配置文件

安装路径下的/nginx/sbin/nginx -t

启动命令

安装路径下的/nginx/sbin/nginx

停止命令

安装路径下的/nginx/sbin/nginx -s stop

或者:nginx -s quit

重启命令

安装路径下的/nginx/sbin/nginx -s reload

查看进程命令

ps -ef | grep nginx

平滑重启

kill -HUP(Nginx主进程号,即查看进程命令查到的PID)

增加防火墙访问权限

1)sudo vim /etc/sysconfig/iptables

2)-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT

3)保存退出

4)重启防火墙:sudo service iptables restart

四、Nginx项目配置及验证(虚拟域名)

配置步骤

1)编辑 sudo vim /usr/local/nginx/conf/nginx.conf

增加 include vhost/*.conf

保存退出

备注:http://learning.happymmall.com/nginx/linux_conf



2)在 /usr/local/nginx/conf/目录新建vhost文件夹。即:/usr/local/nginx/conf/vhost

3)创建域名转发配置文件
http://www.liugy.xin
liugy.com.conf

img.liugy.com.conf

s.liugy.con.conf

4)启动(重启)验证

启动:${nginx}/sbin/nginx

重启:${nginx}/sbin/nginx -s reload

注:${nginx}代表安装在系统中的路径,例如 /usr/local/nginx

5)访问验证

使用默认80端口访问验证:http://localhost:80 或 http://127.0.0.1:80
6)既指向端口又指向目录

server {

listen 80;

autoindex on;

server_name happymmall.com www.happymmall.com;

access_log /usr/local/nginx/logs/access.log combined;

index index.html index.htm index.jsp index.php;

if ( $query_string ~* ".*[\;'\<\>].*" ){

        return 404;

        }

location = / {

        root /product/front/mmall_fe/dist/view;

        index index.html;

}

location ~ .*\.html$ {

        root /product/front/mmall_fe/dist/view;

        index index.html;

}

location / {

        proxy_pass http://127.0.0.1:8080/;
        }

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {

        proxy_pass http://127.0.0.1:8080;
        expires 30d;

        }

location ~ .*\.(js|css)?$ {

        proxy_pass http://127.0.0.1:8080;
        expires 7d;

        }

}



执行顺序:

server是大节点,

listen 80:监听80端口

autoindex on:是否创建首页的索引目录(值有:on 、off)

server_name:二级域名,当nginx接到二级域名请求过来后,转到 location节点处  proxy_pass  处的配置地址

7)指向目录配置方法



8)测试验证



五、Nginx本地玩耍注意事项

1)可以配置域名转发,但是请一定要配置host,并且使用host生效之后才可以,设置完成之后要重启浏览器

1、Linux:

(1)sudo vim /etc/hosts

(2)添加好对应的域名及ip

(3):wq保存退出



2、Windows:

(1)进入 C:\Windows\System32\drivers\etc

(2)用记事本打开hosts文件

(3)添加好对应的域名及ip

(4)保存退出

例如:

#CentOS

192.168.10.110  www.liugy.com

192.168.10.110  img.liugy.com

192.168.10.110  s.liugy.com

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