带问号的URL提供找不到的页面

带问号的URL提供找不到的页面,url,contao,Url,Contao,我有一个问题的网址,涉及一个问号,在一个特定的网站 如果你点击这个链接 它将给出一个未找到的页面 但在其他类似的网站上并非如此 我想知道为什么以及如何解决这个问题?我应该调查什么?如果有必要,该网站由Contao创建 谢谢, Andre这里有一个关于查询字符串的简短教程 引用维基百科:在万维网中,查询字符串是统一资源定位器(URL)的一部分,其中包含要传递给Web应用程序的数据 查询字符串是将数据从应用程序的一个页面传递到另一个页面的技术之一。把它们看作是从一个页面传递到另一个页面的变量。URL

我有一个问题的网址,涉及一个问号,在一个特定的网站

如果你点击这个链接 它将给出一个未找到的页面

但在其他类似的网站上并非如此

我想知道为什么以及如何解决这个问题?我应该调查什么?如果有必要,该网站由Contao创建

谢谢,
Andre

这里有一个关于查询字符串的简短教程

引用维基百科:在万维网中,查询字符串是统一资源定位器(URL)的一部分,其中包含要传递给Web应用程序的数据

查询字符串是将数据从应用程序的一个页面传递到另一个页面的技术之一。把它们看作是从一个页面传递到另一个页面的变量。URL中后跟问号(?)的所有内容都是查询字符串的一部分

包含查询字符串的URL的典型示例如下

或者,如果包含子站点,则:

上述URL中的查询字符串为

field1=value1&field2=value2&field3=value3

现在,该查询字符串对应于具有相应值的3个字段(变量)

在应用程序的服务器端;对于该特定页面,您可以访问查询字符串字段以获取相应的值,并处理这些值以获得所需的结果

有关更多信息,请参阅


考虑到您的担忧,网站的开发人员必须决定以这种方式处理查询字符串,并且必须重定向到“未找到页面”。可能他们正在处理页面上的某些查询字符串,如果用户发现错误,他们会将您重定向到错误页面。

问题确实在于查询字符串。Contao检查是否有未使用的$\u GET变量(意味着系统中没有代码检查该变量),如果有,则确定URL无效并抛出404

在Contao 3 core中,此检查通过
FrontendTemplate->output()
方法完成

对此问题进行了详细讨论(主要是德语)


为了使URL有效,代码的某些部分必须调用
Input::get('xxx')
,将查询字符串变量标记为系统中的“used”。

请了解查询字符串hanks以获得一些提示。你能说得更准确些吗?顺便问一下,为什么我的问题被否决了?因为这是个愚蠢的问题?我不是生闷气,只是出于好奇。我是新来的。你的问题被否决了,因为人们很容易在谷歌上找到这个话题,因此这对askOh来说是一个非常普遍和常见的问题。我知道,问号是用来做什么的。我的问题是,为什么一个网站给出了一个“未找到的页面”,而另一个没有。我猜可能是服务器设置的问题。不知道这叫什么,很难用谷歌搜索。现在我知道了它的技术术语(查询字符串),我可以试着用谷歌搜索它。不允许查询字符串是站点开发人员的选择。请看看我的编辑和接受,并向上投票我的答案,如果它是有用的