404查询字符串值以数字开头时出错


404 error when query string value starts with number

在wordpress中,我在主题设置中有一个自定义模板,用于接受ajax调用。在wordpress网站中,我有一个"页面"设置(page path = /ajax/)来使用该模板-这为我提供了一个javascript请求的端点。在我的javascript代码中,我将GET请求发送到/ajax/?param1=val1&param2=val2,等等。

除非参数的值是一个数字,否则这种方法很好。例如:/ajax/?param1=hello&**param2=12**

在这种情况下,wordpress网站会抛出404错误。当参数值为数字时,wordpress似乎不会将url映射到页面。当参数值以数字开头时也会发生这种情况,因此与/ajax/?param1=hello&**param2=5foo**一样,也会做同样的事情。

有人能告诉我这里发生了什么事吗?

使用Wordpress 3.0.1

编辑:更多信息。。。这似乎是一个环境问题。我只在dreamhost上的网站开发版本上有这个问题,但在1和1上的网站实时版本上没有。

dev php版本:5.3.27实时php版本:5.2.17(没有参数问题)

问题与wordpress版本无关,也与php版本无关。我的一个查询字符串参数名为"year",当它包含一个数字时,wordpress将该参数与用于查找博客文章的%year%token/参数进行匹配。解决方案是将我使用的参数重命名为其他参数,这样它就不会与wordpress内部使用的查询字符串"year"param冲突。