Questions tagged «url»

统一资源定位符是用于指定资源位置的通用方案。它们最常用于标识Internet上的位置(例如网页和电子邮件地址),但几乎可以用来引用任何内容。


1
如何区分IPv6 URL中的主机和端口?
网址始终具有以下格式: <protocol>://<host>[:<port>]/[<path>][#<hash>] 问题在于IPv6使用冒号,就像端口和主机的分隔符一样,例如: 2001:db8:1f70::999:de8:7648:6e8 但是,如果这是主机,并且我想通过端口100上的HTTP连接到主机,该怎么办? http://2001:db8:1f70::999:de8:7648:6e8:100/ 问题是最后一个冒号。由于用双冒号(在1f70和999之间)省略了零,因此未知':100'是否属于IP或端口号。我们怎么知道呢?
87 ipv6  url 

21
http://to./有效域名到底是怎么回事?
显然,这是一个URL缩短器。它可以在Chrome和Firefox中很好地解决。这是一个有效的顶级域名吗? 更新:对于说这是浏览器恶作剧的人们,为什么会这样:为什么http://com./不带我去:http://www.com/? 而且,浏览器是否曾经从地址栏中的实际地址以外的其他地方发送过响应?除了框架集之类的东西之外,我认为浏览器还非常努力地仅从地址栏中的站点向您发送内容,以防止网络钓鱼。


2
简单的apache2从一个域重定向到另一个域
我想做的是以下几点: 我的域xy.example.com不再存在。因此,我想简单地重定向到新域abc.example.com。它应该是重定向,当有人在浏览器栏中键入http://xy.example.com/team.php时也可以使用-它将重定向到http://abc.example.com/team.php 我已经尝试了一些方法,但是并没有真正起作用。我必须在Apache 2配置中添加什么?

2
在Nginx代理中禁用URL解码
当我浏览到该URL时:http://localhost:8080/foo/%5B-%5D服务器(nc -l 8080)照原样接收它: GET /foo/%5B-%5D HTTP/1.1 但是,当我通过nginx(1.1.19)代理此应用程序时: location /foo { proxy_pass http://localhost:8080/foo; } 通过nginx端口路由的相同请求将通过解码的路径转发: GET /foo/[-] HTTP/1.1 GET路径中已解码的方括号会导致目标服务器中的错误(HTTP状态400-路径中的非法字符...)在未转义的情况下到达。 有没有一种方法可以禁用URL解码或对其进行编码,以便目标服务器通过nginx路由时获得完全相同的路径?一些聪明的URL重写规则?
21 nginx  rewrite  url 



1
谁(什么?!)是“ http://1.1.1.1/bmi”?[关闭]
很难说出这里的要求。这个问题是模棱两可,含糊,不完整,过于宽泛或夸张的,不能以目前的形式合理地回答。如需帮助澄清此问题以便可以重新打开, 请访问帮助中心。 8年前关闭。 我不确定这是否是要问的地方,但是我发现一些页面中包含以“ http://1.1.1.1/bmi ” 开头的链接。 谁或什么1.1.1.1?也许http://1.1.1.1/bmi还有更多意义1.1.1.1?
15 ip  internet  web  url 

1
如何为我的域设置Google ShortName服务,以便不需要FQDN
博客文章“ 您的域的 “ tinyurl”服务 ”说明了如何使用Google Apps为您的域设置ShortName服务。例如,如果您的域是example.com并且使用Google Apps,则可以对其进行配置,以使其http://go.example.com成为企业的个人ShortName服务。 注意:这并不是要创建供世界使用的“ tinyurl”服务。这是针对企业的。 拥有仅您的用户可以使用的短名称服务非常有用,这样您就可以创建指向内部页面的链接。您可以说“今天的午餐菜单位于http://go.example.com/lunch ” ,而不是告诉人们冗长的URL 。该博客文章记录了使人们能够建立自己的链接的一些好处。(最重要的是:他们不必打扰您来设置新链接!) 问题 系统存在的问题是URL仍然很长。人们宁愿在其网络浏览器中输入“ go / lunch”并使其运行。遗憾的是,由于HTTP协议的工作原理很复杂,因此Google Apps无法支持此功能。HTTP 1.1中的“ Host:”标头列出了用户在其Web浏览器中键入的域,而不是FQDN。换句话说,当Google Apps获得对“ http:// go / lunch ”的HTTP请求时,网络服务器将收到“ go”作为主机名。由于Google Apps为许多域提供此服务,因此无法确定您是否想要go.example.com或go.some-other-example.com。 结果,用户每次必须输入“ go.example.com/lunch”,这比“ go / lunch”长得多。 解决方案 Google可以使用网络Cookie或其他方案解决此问题。没有一个是特别干净或容易的。在它们完成之前,您可以通过设置自己的计算机来解决问题,该计算机将请求接受为“执行”并重定向它们。 服务器接受对名为“ go”的站点的HTTP请求,并将请求重定向到go.example.com。然后,您创建正确的DNS记录以使其起作用,并旋转DHCP配置,以便您的便携式计算机/工作站执行正确的操作。 该服务器故障文档的重点是解释该过程,然后提供配置示例来帮助您为自己的站点执行此操作。由于我无法访问或不了解世界上的每个操作系统,因此我将其作为“社区Wiki”,以便人们在为其工作时可以填写配置摘要。我将“ TODO”放在特别需要改进的地方。 细节 在此示例中,我们将使用“ example.com”作为域。 第1步:以常规方式设置Google Apps服务。 go.example.com正常配置服务。测试它,并确保类似的URL http://go.example.com/foo。如果还没有完成,请不要继续。这就像在您拥有汽车之前尝试修理您的汽车。 步骤2:选择您的重定向器主机名 如果您的短名称服务是go.example.com,理想情况下,您将使用重定向器的名称go.example.com。可悲的是,物理阻止了两个物体同时位于同一位置,而DNS遵守物理定律。 诀窍是使重定向器的主机名与ShortName服务相同,但位于不同的域中。例如,go.corp.example.com,go.ext.google.com,或go.this-is-different.example.com。 …

4
参数长度> 255的重写URL不起作用
我正在使用mod_rewrite重写这样的URL: http://example.com/1,2,3,4/foo/ 通过在.htaccess中执行以下操作: RewriteEngine On RewriteRule ^([\d,]+)/foo/$ /foo.php?id=$1 [L,QSA] 它可以正常工作,但当“ 1、2、3、4”变成一个长度超过255个字符的字符串时,Apache返回“ 403 Forbidden”。 foo.php?id=1,2,3,4即使使用很长的ID字符串也可以直接访问,但是这对我来说不是一个选择。 是否有一些我应该调整的Apache或其他设置? 更新:我使用RewriteLogLevel 9打开了RewriteLog。使用短ID字符串,我的日志文件中出现了几行。但是,当id字符串大于255个字符时,不会记录任何内容(似乎mod_rewrite甚至没有执行?)。 如果您觉得这个问题有趣/有帮助,请对其进行投票。

2
防止URL重写规则被IIS7中的子目录继承
我有一个用于CMS中干净URL的URL Rewrite设置,我的web.config如下所示: <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="Clean URLs" stopProcessing="true"> <match url="^([^/]+)/?$" /> <conditions> <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> </conditions> <action type="Rewrite" url="?id={R:1}" /> </rule> </rules> </rewrite> </system.webServer> </configuration> 它基本上变成index.php?id=something为something清洁的网址。非常简单,效果很好。 与CMS中常见的一样,为防止后端损坏,每个子目录都需要一个目录<remove name="Clean URLs" />或<clear />在其web.config中,因此该规则不会被继承。 是否可以通过某种方式将规则的范围限制为仅当前目录,来在父规则中指定它根本不应该由其子级继承?像是<rule name="Clean URLs" stopProcessing="true" inherit="no">史诗般的东西。
11 iis  iis-7  rewrite  url  web.config 

3
是什么决定FQDN是解释为IPv6还是IPv4?
当我在URL栏中键入完全限定域名(FQDN)时,浏览器将连接到一些映射表(该表存储在哪里?服务提供商在其中?),该表确定了托管请求文件的位置。 因此,是否支持IPv6地址取决于服务提供商(我假设它具有转换表)。真的吗?

3
企业内部URL约定
开发人员...我希望您对此有IT方面的看法... 我正在为我的公司构建一个新的内部Web应用程序,并开始考虑如何部署它。这里的许多现有Web应用程序都直接使用其服务器名称链接到,例如: http://webserver123/someInternalApp/ 由于多种原因,这使我感到不舒服。服务器名称更改,服务器关闭,用户不必知道服务器名称即可找到其Web应用程序。使用服务器名称可以防止我们交换服务器或添加负载平衡器。如果您认为其他原因不好,请告诉我,以便我为更改此做法提供更好的理由。 展望未来,我想在我们的内部DNS中设置一些更好的域名,这些域名将指向适当的Web服务器和应用程序。在上一份工作中,我们遵循了这样的约定: 用于生产: http://someInternalApp.myCompany.com/ 测试: http://test.someInternalApp.myCompany.com/ 开发: http://dev.someInternalApp.myCompany.com/ 我喜欢这个更好的,因为应用程序的名称是域名的一个重要组成部分,与开发/测试/生产环境的指定很简单。但是,我有一些保留意见: 将应用程序名称放在子域中最终将创建许多长而唯一的子域。我喜欢每个应用程序都有不同的域,但是我也觉得很难管理。 除了应用程序名称外,没有其他任何东西可以指定此URL是内部的。我已经读过其他组织使用诸如“ corp.myCompany.com”或“ int.myCompany.com”之类的子域的信息,这可能很好。我不希望用户给人留下他们可以在家中访问它们的印象。 以下是我倾向于使用内部域名的一些选项: 内部子域中的应用名称:(它们有点长,但我认为所有内容都打包在一起) http://someInternalApp.corp.myCompany.com/ http://dev.someInternalApp.corp.myCompany.com/ 应用程序名称作为子目录:(较短的域名,但是它意味着所有应用程序都属于一个统一站点的一部分,而它们可能不是,并且使环境名称与该应用程序断开连接) http://corp.myCompany.com/someInternalApp http://dev.corp.myCompany.com/someInternalApp 那么,让我们讨论一下...这些选项如何考虑?我可能错过了更好或更常见的东西吗?在这方面,我有机会让我的公司走上更好的道路,所以我想找一个好的建议来推荐。 谢谢!


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.