Nginx虚拟主机配置实践之nginx访问同一个地址方法(二)

本文涉及的产品
.cn 域名,1个 12个月
简介:

Nginx虚拟主机配置实践之nginx访问同一个地址方法(二)



一、虚拟主机别名介绍

虚拟主机别名就是为虚拟主机设置除了主域名以外的另一个或多个域名名字,这样就能实现用户访问的多个域名对应于同一个虚拟主机网站的功能。在生产环境中,www.afeilinux.com域名的虚拟主机为例,为其增加一个别名afeilinux.com时,在该域名出现的网站内容和访问www.afeilinux.com得到的结果是一样的。

二、实施方法

第一种方法:Nginx虚拟主机的别名配置

  1. 更改wtf.conf配置文件

    [root@nginx-oldboy conf]# vim extra/wtf.conf

    3    server_name  www.afeilinux.com afeilinux.com;

  2. 比较更改前后配置文件


    wKioL1lIyumy70n8AAAswggfBgg346.png

    wKiom1lIyurC__9fAAAo--h43dg447.png

  3. 语法检查与重新加载

    [root@nginx-oldboy conf]# nginx -t

    wKioL1lIy3OD6ibzAAAWPJ3nvdg403.png

    [root@nginx-oldboy conf]# nginx -s reload

  4. 更改hosts

    [root@nginx-oldboy conf]# vim /etc/hosts

    添加:192.168.8.117  www.afeilinux.com  afeilinux.com

  5. 测试

    [root@nginx-oldboy conf]# curl www.afeilinux.com

    第一次测试

    [root@nginx-oldboy conf]# curl afeilinux.com

    第一次测试

    wKiom1lJFJCCRp2WAAAgzxGmGgY613.png

  6. 虚拟主机别名在生产中实际运用

    多数企业网站希望访问www.afeilinux.com和afeilinux.com时,所浏览的是同一个页面,若有这类需求,就可以让afeilinux.com以别名的方式出现,这时两个域名都要解析到服务器的IP地址。

第二种方法:Nginx rewrite

  1. Nginx rewrite概念

    和Apache等Web服务软件一样,Nginx rewrite的主要功能也是实现URL地址重写。Nginx的rewrite规则需要PCRE软件的支持,即通过perl兼容正则表达式语法进行规则匹配。所以在安装Nginx时要安装PCRE软件,同时也让Nginx支持了rewrite的功能,默认参数编译时,Nginx就会安装支持rewrite的模块,但是,也必须要有PCRE软件的支持。

    查看安装Nginx版本和模块的信息:

    [root@nginx-oldboy ~]# nginx -V

    wKioL1lJGc6TOREAAAAyfLXDVmg664.png

  2. rewrite指令语法

    语法:rewrite regex replacement[flag]

    默认值:none

    应用位置:server、location、if

    rewrite是实现URL重写的关键指令,根据regex(正则表达式)部分的内容,重定向到replacement部分,结尾是flag标记。下面是个简单的URL rewrite跳转的例子:

    rewrite ^/(.*) http://www.afeilinux.com/$1 permanent;

    在上述指令中,rewrite为固定关键字,表示开启一条rewrite匹配规则,regex部分是^/(.*),这是一个正则表达式,表示匹配所有,匹配成功后跳转到http://www.afeilinux.com/$1。这里的$1是取前面regex部分括号里的内容,结尾是permanent;是永久301重定向标记,即跳转到后面的http://www.afeilinux.com地址上。

  3. Nginx rewrite的企业应用场景

    (1)可以调整用户浏览的URL,使其看起来更规范,合乎开发及产品人员的需求。

    (2)为了让搜索引擎收录网站内容,并让用户体验更好,企业会将鼎泰URL地址伪装成静态地址提供服务。

    (3)网站换新域名后,让旧域名的访问跳转到新的域名上,例如:让京东的360buy换成了jd.com。


    (4)根据特殊变量、目录、客户端的信息进行URL跳转等。

  4. Nginx rewrite 301跳转

    实验背景:实现域名从afeilinux.org跳转到www.afeilinux.org

    查看原来虚拟主机的配置:

    [root@nginx-oldboy extra]# cat org.conf

    wKiom1lJI4jRRFiFAAAnhckOBzI146.png

    更改之后的虚拟主机配置:

    [root@nginx-oldboy extra]# cat org.conf

    wKioL1lJ2IHQRuS4AAA3hsuBSYQ028.png

  5. 说明:当用户访问afeilinux.org及下面的任意内容时,都会通过这条rewrite跳转到www.afeilinux.org对应的地址。

  6. 语法检测与nginx重启

    [root@nginx-oldboy extra]# nginx -t

    [root@nginx-oldboy extra]# nginx -s reload

  7. 测试

    wKiom1lJ2N_AsDp1AABMffnzafo797.png

    说明:上图访问前的地址是:afeilinux.org,访问后的地址:www.afeilinux.org

    curl测试:

    wKioL1lJ2dyzosC8AAAt3hjR8Ao196.png






     本文转自品鉴初心51CTO博客,原文链接:http://blog.51cto.com/wutengfei/1940440,如需转载请自行联系原作者


相关文章
|
2月前
|
应用服务中间件 BI nginx
Nginx的location配置详解
【10月更文挑战第16天】Nginx的location配置详解
|
2月前
|
缓存 负载均衡 安全
Nginx常用基本配置总结:从入门到实战的全方位指南
Nginx常用基本配置总结:从入门到实战的全方位指南
306 0
|
2月前
|
应用服务中间件 Linux nginx
Jetson 环境安装(四):jetson nano配置ffmpeg和nginx(亲测)之编译错误汇总
这篇文章是关于在Jetson Nano上配置FFmpeg和Nginx时遇到的编译错误及其解决方案的汇总。
96 4
|
22天前
|
存储 负载均衡 中间件
Nginx反向代理配置详解,图文全面总结,建议收藏
Nginx 是大型架构必备中间件,也是大厂喜欢考察的内容,必知必会。本篇全面详解 Nginx 反向代理及配置,建议收藏。
Nginx反向代理配置详解,图文全面总结,建议收藏
|
1月前
|
应用服务中间件 API nginx
nginx配置反向代理404问题
【10月更文挑战第18天】本文介绍了使用Nginx进行反向代理的配置方法,解决了404错误、跨域问题和302重定向问题。关键配置包括代理路径、请求头设置、跨域头添加以及端口转发设置。通过调整`proxy_set_header`和添加必要的HTTP头,实现了稳定的服务代理和跨域访问。
189 1
nginx配置反向代理404问题
|
20天前
|
应用服务中间件 网络安全 nginx
轻松上手Nginx Proxy Manager:安装、配置与实战
Nginx Proxy Manager (NPM) 是一款基于 Nginx 的反向代理管理工具,提供直观的 Web 界面,方便用户配置和管理反向代理、SSL 证书等。本文档介绍了 NPM 的安装步骤,包括 Docker 和 Docker Compose 的安装、Docker Compose 文件的创建与配置、启动服务、访问 Web 管理界面、基本使用方法以及如何申请和配置 SSL 证书,帮助用户快速上手 NPM。
124 1
|
2月前
|
编解码 Ubuntu 应用服务中间件
Jetson 环境安装(三):jetson nano配置ffmpeg和nginx(亲测)
本文介绍了在NVIDIA Jetson Nano上配置FFmpeg和Nginx的步骤,包括安装、配置和自启动设置。
175 1
Jetson 环境安装(三):jetson nano配置ffmpeg和nginx(亲测)
|
1月前
|
缓存 负载均衡 应用服务中间件
Nginx配置
【10月更文挑战第22天】在实际配置 Nginx 时,需要根据具体的需求和环境进行调整和优化。同时,还需要注意配置文件的语法正确性和安全性。
51 7
|
2月前
|
前端开发 JavaScript 应用服务中间件
终极 Nginx 配置指南
本文介绍了Nginx的基本配置及其优化方法。首先,通过删除注释简化了Nginx的默认配置文件,使其更易于理解。接着,文章将Nginx配置文件分为全局块、events块和http块三部分进行详细解释。此外,还提供了如何快速上线网站、解决前端history模式404问题、配置反向代理、开启gzip压缩、设置维护页面、在同一IP上部署多个网站以及实现动静分离的具体配置示例。最后,附上了Nginx的基础命令,包括安装、启动、重启和关闭等操作。
|
2月前
|
负载均衡 应用服务中间件 nginx
Nginx的6大负载均衡策略及权重轮询手写配置
【10月更文挑战第9天】 Nginx是一款高性能的HTTP服务器和反向代理服务器,它在处理大量并发请求时表现出色。Nginx的负载均衡功能可以将请求分发到多个服务器,提高网站的吞吐量和可靠性。以下是Nginx支持的6大负载均衡策略:
206 7