Nginx的安装和多域名配置

Nginx安装

centos6.x yum默认没有nginx的软件包

安装方式:

到nginx下载页面http://nginx.org/en/linux_packages.html#stable,复制CENTOS 6的nginx软件源安装包

运行命令:

安装rpm包

此步实际只是加入了nginx的软件包源 

执行 yum install nginx -y 就可以安装好nginx了。

nginx默认安装为Linux的服务 ,所以可以使用service nginx start, stop, restart, try-restart, reload, force-reload, status来操作nginx。

Nginx配置文件

nginx的配置文件默认读取/etc/nginx/nginx.conf文件。

当然也可以修改使用的conf路径,使用命令:

可以相对路径或者绝对路径。

如果是不熟悉环境的Linux服务器,可以使用命令来快速查找nginx.conf文件 :

也可以使用命令

来输出正在使用的配置文件:

nginx的配置都是由 directives组成,directives由简单指令或者区块指令组成

简单指令:listen 80;

区块指令由{}包含,区块指令又可以包含多个简单指令和区块指令:

多域名配置

我们都知道如果在域名管理的控制面板设置域名对应ip只能设置到ip,不能详细设置到端口。如果一台服务器部署了多个web应用,使用的不同端口启动的,那么就可以Nginx做映射。

比如我有一个域名 www.525.life。

域名还可以分出2级域名: admin.525.life。

我在域名控制面板把这两个域名都指向我的服务器公网ip 123.123.123.123。

这时候发现www.525.life和admin.525.life域名访问都只是对应到了 使用端口80的Web程序(默认的)。

如果我们要访问81端口的应用程序只能使用:

www.525.life:81或者

admin.525.life:81。

但是这样很不方便。我们要把端口去掉也能访问就需要使用Nginx做映射。

我们期望www.525.life访问8880端口,admin.525.life访问8881端口。那么可以设置如下:

Nginx的安装和多域名配置_第1张图片

这样设置就可以了。把8880和8881都映射到80端口的监听。

使用重载命令使nginx生效:

使用命令重启nginx生效:

这样就能使用www.525.life访问8880端口,admin.525.life访问8881端口。

每个域名一个conf的写法

我们在上面的例子中使用的是一个文件多个域名的写法,也就是只使用一个conf,在里面不断的增加server。这种方式很直观,但是域名多了不好管理。

Nginx支持引入的用法,也就是我们可以在其他地方先新建好conf文件,conf文件中记录server的信息如下:

admin.conf中的内容是:

Nginx的安装和多域名配置_第2张图片

www.conf中的内容是:

Nginx的安装和多域名配置_第3张图片

admin.conf和www.conf都放在/data/nginx/conf/vhost目录下。

然后在nginx.conf中使用引入命令:

即可。

需要注意的是这句命令应该放在

http{ }

的花括号内。

因为include的命令引入相当于被引入的所有代码写在nginx.conf中一样。

301跳转

我们留意到生活中很多时候不带www也能访问到某个网站,这也能通过Nginx实现。跟上面的配置一样,再增加一个server如下:

Nginx的安装和多域名配置_第4张图片

或者进行301跳转

Nginx的安装和多域名配置_第5张图片

添加404网页

添加404网页,都可又直接在里面添加,如:

Nginx的安装和多域名配置_第6张图片

禁止IP直接访问

最后还有一个方法需要注意,可能有需要禁止IP直接访问80端口或者禁止非本站的域名绑定我们的IP,这样的话应该

如下处理,放到最前一个server上面即可:

Nginx的安装和多域名配置_第7张图片

加Java架构师群获取Java工程化、高性能及分布式、高性能、深入浅出。高架构。性能调优、Spring,MyBatis,Netty源码分析和大数据等多个知识点高级进阶干货的直播免费学习权限 都是大牛带飞 让你少走很多的弯路的 群..号是:855801563 对了 小白勿进 最好是有开发经验

注:加群要求

1、具有工作经验的,面对目前流行的技术不知从何下手,需要突破技术瓶颈的可以加。

2、在公司待久了,过得很安逸,但跳槽时面试碰壁。需要在短时间内进修、跳槽拿高薪的可以加。

3、如果没有工作经验,但基础非常扎实,对java工作机制,常用设计思想,常用java开发框架掌握熟练的,可以加。

4、觉得自己很牛B,一般需求都能搞定。但是所学的知识点没有系统化,很难在技术领域继续突破的可以加。

5.阿里Java高级大牛直播讲解知识点,分享知识,多年工作经验的梳理和总结,带着大家全面、科学地建立自己的技术体系和技术认知!

你可能感兴趣的:(Nginx的安装和多域名配置)