Nginx的安装和多域名配置

centos6.x yum默认没有nginx的软件包 安装方式: 到nginx下载页面http://nginx.org/en/linux_packages.html#stable,复制CENTOS 6的nginx软件源安装包 运行命令:html

安装rpm包

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

执行 yum install nginx -y 就能够安装好nginx了。linux

nginx默认安装为Linux的服务 ,因此可使用service nginx start, stop, restart, try-restart, reload, force-reload, status来操做nginx。 Nginx配置文件nginx

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

固然也能够修改使用的conf路径,使用命令:centos

能够相对路径或者绝对路径。 若是是不熟悉环境的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端口。那么能够设置以下:

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

使用重载命令使nginx生效:

使用命令重启nginx生效:

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

每一个域名一个conf的写法

咱们在上面的例子中使用的是一个文件多个域名的写法,也就是只使用一个conf,在里面不断的增长server。这种方式很直观,可是域名多了很差管理。 Nginx支持引入的用法,也就是咱们能够在其余地方先新建好conf文件,conf文件中记录server的信息以下: admin.conf中的内容是:

www.conf中的内容是:

admin.conf和www.conf都放在/data/nginx/conf/vhost目录下。 而后在nginx.conf中使用引入命令:

便可。 须要注意的是这句命令应该放在 http{ } 的花括号内。 由于include的命令引入至关于被引入的全部代码写在nginx.conf中同样。

301跳转

咱们留意到生活中不少时候不带www也能访问到某个网站,这也能经过Nginx实现。跟上面的配置同样,再增长一个server以下:

或者进行301跳转

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

禁止IP直接访问 最后还有一个方法须要注意,可能有须要禁止IP直接访问80端口或者禁止非本站的域名绑定咱们的IP,这样的话应该 以下处理,放到最前一个server上面便可:

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

相关文章
相关标签/搜索