首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >网站托管URL长度限制?

网站托管URL长度限制?
EN

Stack Overflow用户
提问于 2009-04-05 02:00:12
回答 3查看 3.5K关注 0票数 0

我正在设计一个与我的iPhone应用程序相结合的web应用程序。它向web服务器(约15000)发送大量大型URL。我使用的是NearlyFreeSpeech.net,但它们只支持2000个字符的URLS。我想知道是否有人知道网络主机将支持真正的大型URL?谢谢,艾萨克

编辑:我的程序需要在中打开一张图片。我可以用两种方法:

  • 将base64发送到URL中,并只回显查询参数。
  • 首先将其发布到应用程序中的服务器,然后服务器在将照片存储到数据库后返回唯一的ID,然后将其附加到Safari中打开的URL,该URL将从数据库检索照片并从数据库中删除。

您看,我很懒,而且我知道Mobile可以支持高达80000个字符的URI,所以我认为这是一种很好的方法。如果真的有什么问题,请告诉我。

编辑:,我以正确的邮政方式完成了这一工作。谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-04-05 02:09:01

如果您要发送15,000个字符的长URL,则如下所示:

alt文本http://img16.imageshack.us/img16/3847/youredoingitwronga.jpg

使用类似于HTTP的东西。

您所遇到的限制与主机无关--更多的是web服务器对URL的长度有限制。根据此页,Apache将您限制在大约4k字符,而IIS默认将您限制在16k。

票数 19
EN

Stack Overflow用户

发布于 2009-04-05 02:06:54

尽管浏览器和服务器没有直接回答您的问题,也没有官方规定的最大URL长度,但是浏览器和服务器有实际的限制--请参阅http://www.boutell.com/newfaq/misc/urllength.html获取一些详细信息。简而言之,由于IE (至少使用中的一些版本)不支持超过2,083个字符的URL,所以最好保持在这个长度以下。

票数 3
EN

Stack Overflow用户

发布于 2009-04-05 03:06:17

如果您只需要在Safari中打开它,并且不需要涉及服务器,为什么不使用URI呢?

从根本上说,通过网络发送长URI从来都不是正确的。正如您注意到的,一些web主机不支持长URI。一些代理服务器也可能会被长URL阻塞,这意味着您的应用程序可能不适用于那些代理背后的用户。如果您需要将应用程序移植到不同的浏览器,其他浏览器可能不会支持URI那么长时间。

如果您需要将数据发送到服务器,请使用POST。是的,这是一个额外的往返,但它将是更可靠的。

此外,如果您使用GET请求将数据上载到服务器,那么您就容易受到各种跨站点请求伪造攻击;基本上,攻击者可以通过让用户单击链接(可能是TinyURL或另一个URL缩短服务隐藏的)将goatse上载到他们的帐户,或者只是将其作为一个链接嵌入网页中,而当他们不仔细查看他们所点击的URL时。

除了不实际更改服务器上任何内容的查询参数之外,您不应该使用GET将数据发送到服务器。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/718205

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档