【实战】2-15 Nginx安装配置

来源:互联网 发布:淘宝app开店 编辑:程序博客网 时间:2024/06/15 18:20

Nginx是什么

Nginx是一款轻量级的web服务器,也是一款反向代理服务器,这个实战里面主要作为http反向代理服务器,还可以作为负载均衡服务器、邮件代理服务器、实现前端动静分离

安装依赖

需要安装一些依赖,如果有就可以不再次安装,没有就装上呗~

#安装gccyum install gcc#安装pcreyum install pcre-devel#安装zlibyum install zlib zlib-devel#安装OpenSSLyum install openssl openssl-devel

下载安装

#这里我下载最新的稳定版wget http://101.96.10.63/nginx.org/download/nginx-1.12.1.tar.gz#解压缩tar -zxvf nginx-1.12.1.tar.gz#进入Nginx文件夹cd nginx-1.12.1#执行./configure,就安装在默认目录/usr/local/nginx./configure#最后,这样安装完成makemake install#可以查看安装位置whereis nginx

Nginx常用命令

  • 测试配置文件
    进入nginx安装目录下的/nginx/sbin
    执行./nginx -t

  • 启动命令
    还是上面那个位置,执行./nginx

  • 停止命令
    ./nginx -s stop或者./nginx -s quit

  • 重启命令
    ./nginx -s reload

  • 通过查看进程平滑重启

#查看nginx进程ps -ef | grep nginx#平滑重启kill -HUP 前面查出来的PID号

再次为nginx配置防火墙

vim /etc/sysconfig/iptables#往合适位置添加-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT#保存退出,重启防火墙,阿里云控制台里面80端口我已经打开,这里就不赘述了service iptables restart

Nginx虚拟域名(端口转发、目录转发)

这里我暂时先不跟老师一样配置这个,配置完以上,直接浏览器访问我的阿里云ip地址就能看到如下截图
这里写图片描述

如果买了域名并配置了解析,还能用自己的域名访问到O(∩_∩)O哈哈~自己起个生僻点的价格不贵~
这里写图片描述

开始配置反向代理哈~

#编辑nginx配置vim /usr/local/nginx/conf/nginx.conf#在里面增加一行include vhost/*.conf,这样做体现分层配置的思想,不要把所有的配置都加在一个文件中#在/usr/local/nginx/conf/下新建vhost文件夹#新建一个winxblast.top.conf文件vim winxblast.top.conf

添加以下内容

#这样我就通过nginx反向代理了tomcat,从80端口到8080端口,这样在防火墙中就不用把8080端口开放了server {     default_type 'text/html';     charset utf-8;     listen 80; //监听80端口    autoindex on; //是否创建首页的索引目录    server_name www.winxblast.top; //把对该域名的请求转移到下面location中填写的地址    access_log /usr/local/nginx/logs/access.log combined;     index index.html index.htm index.jsp index.php;     #error_page 404 /404.html;     if ( $query_string ~* ".*[\;'\<\>].*" ) {         return 404;     }     location / {         proxy_pass http://127.0.0.1:8080; //如果是转发到文件目录,则使用root+目录位置        add_header Access-Control-Allow-Origin *;     } } 

重启nginx试试就可以啦
这里写图片描述

目录转发及其意义

上面讲了Nginx能实现某个域名请求过来转发到某个文件目录,这里我让img.happymall.winxblast.top转发到之前设置的ftp文件夹,这样后期通过Apache开源包,在商店商品管理后台上将商品图片等传入这个图片目录下。这么做更大的意义在于,以后访问量增大时,可以把文件服务器单独设立出来,以提高性能,更好的实现架构的扩展。

#还是在/usr/local/nginx/conf/vhost/下新建一个配置文件img.happymall.winxblast.top.conf#添加如下内容server {     listen 80;     autoindex off;     server_name img.happymall.winxblast.top;     access_log /usr/local/nginx/logs/access.log combined;     index index.html index.htm index.jsp index.php;     #error_page 404 /404.html;     if ( $query_string ~* ".*[\;'\<\>].*" ){         return 404;     }     location ~ /(mmall_fe|mmall_admin_fe)/dist/view/* {         deny all;     }     location / {         root /ftpfile/; //这里的文件位置以后可能会更改        add_header Access-Control-Allow-Origin *;     } } 

最后提醒一句,别忘了给这个二级域名添加DNS解析,不然就访问不到咯···
这样我们就能访问到里面的图片了
这里写图片描述

再附一张老师的架构讲解图

这里写图片描述
这里将file server和session server分离出来以实现更好的性能。

原创粉丝点击