DNS 反向解析 内容并不多 比较绕

DNS 反向解析

首先我们看下什么是反向解析
在这里插入图片描述反向解析即从IP地址到域名的映射。由于在域名系统中,一个IP地址可以对应多个域名,因此从IP出发去找域名,理论上应该遍历整个域名树,但这在Internet上是不现实的。

那么下面集合在网上搜集资料以及自主总结举个反向解析的例子吧

反向解析例子

现在,有十个app,每个都有一千万个a标签,都可以访问到你的 testadd,然后你的产品经理说,我想要改一下 urls 里面的 testadd ,把它改成 test_add,你只用改一下就好了,然后所有的 a 标签,全都访问不到了,这个时候难道要手动去改a标签的 href吗?

当然不可能,这时候就要用到反向解析了。

urlpatterns = [
url(r’^test_add/’, views.testadd,name=‘xxx’)
]

只用在后面追加上一个 name ,也就是他的别名,然后在前端页面中的 a 标签里的 href 之中,不要直接写url了,改写成如下。

222

这里的url将会动态的跟随你 urls 里面的配置更改而更改。

即使是

urlpatterns = [
url(r’/^test_addasdfasfaxvsfqc/(\d+)/’, views.testadd,name=‘xxx’),

他也会跟随他一起变成这样。

前端会用到,那么后端也会有用到,比如当你在重定向的时候, redirect 里面就要写url,这时候不一样,你要首先导入一个reverse模块,跟小白必会三板斧一样,都是从django.shortcuts里导入的。

from django.shortcuts import render,HttpResponse,redirect,reverse

在函数中:

def index(request):
url = reverse(‘xxx’)
return redirect(url)

先用 reverse 反向解析出url ,然后把url放进去就好了。
有名与无名分组的反向解析
无名分组

在这之前,来真正的理解一下 什么是 反向解析

通过 reverse 也好, 通过前端也好,会得到一个结果,只要结果能满足这个表达式,都算反向解析成功。

通常反向解析后面带的数字都是 主键值

前端搞定了,那么来该搞后端了

后端直接访问会报和前端之前一样的错误,需要参数。这时候只需一步:

def index(request):
url = reverse(‘xxx’,arg=(1,))
return redirect(url)

只需要给他加上一个数字就可以了,随便什么数字,我在这里加了一个1.
有名分组

url(r’^test_addsajdsjkahdkjasjkdh/(?P\d+)/’, views.testadd,name=‘xxx’),

    **前端解析
	方式一、
        <a href="{% url 'xxx' 1 %}">222</a>
    方式二、    
        <a href="{% url 'xxx' year=1 %}">222</a>**
    
    后端解析
    方式一、
        url = reverse('xxx',args=(1,))
        
    方式二、 
        url = reverse('xxx',kwargs={'year':123})# 不用浪费脑容量去记这种方式了,用第一种就好了
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Internet 服务提供商 (ISP) 的技术支持成本不断飞涨。实际上,对于许多 ISP 来说,技术支持的成本已经相当于或甚至超过 WAN 带宽成本,成为服务商们花费最高的单项成本。 随着 ISP 的合并、更多的用户上网、典型用户群从精通技术的用户转变为不太懂技术的用户,ISP 正面对着一场日益艰难的战斗。这场战斗由下列部分组成:使最终用户的连接自动化而无论其地理位置在何处、优化基础结构性能以及管理和配置最终用户系统。 许多寻求 ISP 技术支持的电话,都源自域名服务 (DNS) 问题。DNS一个分布式数据库,提供了 IP 地址和主机名之间的映射。 要使网络进行正常运作,就必须为用户的计算机配置正确的 DNS 服务器地址。如果 DNS 服务器地址配置错了(由于用户输入地址时出错、输入被意外更改或其它任何原因),将导致用户失去与 Internet 的连接。几分钟以后,他们寻求 ISP 技术支持的电话就来了。 而且,为用户的计算机正确配置 DNS 服务器地址的需要可能会妨碍 ISP 为满足用户的需求而更改 DNS 的能力。例如,ISP 可能要从一个集中式 DNS 服务器转变为使用许多分散的 DNS 服务器,以适应用户数量的不断增长。 理想情况下,如果使用分散式 DNS 服务器,用户应该访问与之最接近的 DNS 服务器。但是,由于分散式架构中的各 DNS 服务器都具有唯一的 IP 地址,因此,除非每个用户在自己的计算机上重新配置 DNS 服务器地址,否则,是不可能实现这种理想情况的。 对于任何一个 ISP 来说,让用户更改计算机中的 DNS 服务器地址是一项艰巨而耗时、并且蕴涵着各种潜在问题的任务。如果用户在更改过程中由于 DNS 服务器地址配置错误而请求技术支持,则处理起来更加困难。 虽然动态主机控制协议 (DHCP) 可以缓解其中某些问题,但 ISP 必须使他们的所有用户转换成使用这种自动寻址方案。 而在服务器交换机上采用的 DNS 重定向技术可以消除这些问题。服务器交换机是一种新型、特殊的 LAN 交换机,它为单个服务器或服务器集群作前端处理。它所提供的定制服务可以提高可伸缩性、可用性和服务器效率。对发往服务器的流量进行重定向或作负载平衡处理的能力就是这类增值服务之一。 通过重定向 DNS 流量,所有 DNS 请求都被引导至 ISP 所选定的 DNS 服务器,而不管这些请求原来指向何处。如果用户的计算机由于任何原因而使用了错误的 DNS 服务器地址,这也没有任何关系。DNS 请求仍被引导至 ISP 所选定的 DNS 服务器,用户的网络连通性也同时得到维持 ? 无需打电话请求 ISP 的技术支持。 此外,ISP 可能希望用户使用另一个 DNS 服务器,而不是原来为用户的计算机配置的那个,即使原来配置的地址对于用户的本地接入点 (PoP) 来说是正确的。这种情况的一个典型例子,是移动用户离开了原住地,而他们的 ISP 又采用了分布式 DNS 架构。 如果不使用 DNS 重定向,DNS 请求将被发送到用户住宅所在地 PoP 的 DNS 服务器,而不是发送到用户拨入的 PoP 的 DNS 服务器。此时 DNS 重定向可以再次发挥作用,因为用户使用的 DNS 服务器地址将被忽略,DNS 请求将被引导至 ISP 指定的 DNS 服务器。 最后,DNS 重定向还允许将 DNS 请求动态地分配给服务器集群中的多个 DNS 服务器。这样可以提高处理能力,减少响应时间,并提高 DNS 的可用性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值