0

好的,所以我的网站在 Nginx/Wordpress 上运行

如果我导航到:http ://www.website.com/page-one/ - 该页面可以正常工作,太好了。

如果我导航到:http ://www.website.com/page-one?mm_campaign=ew328r9283rj293rj239

仅供参考: 此错误是由 URL 末尾的斜杠或不带斜杠引起的/

我收到 404 错误并被重定向到主页,因为它认为该页面不存在。

所以,我知道首页的404是因为这个:

            error_page 404 @foobar;

    location @foobar {
            rewrite  .*  / permanent;
            }

如果我把它拿出来,那么我会得到一个通用的 404 Nginx 错误页面,这是我绝对不想要的。

我需要能够使用带有查询字符串的 URL 来跟踪某些事情。如果 URL 有查询字符串,我基本上不需要 404。我需要以某种方式写,如果 URL 有查询字符串,不要 404,转到 URL 直到查询字符串开始......但保留查询字符串,以便我可以跟踪你......

我只是不知道怎么写。我什至不确定我用简单的英语正确地写了它。叹。

请帮忙!

4

1 回答 1

0

Wordpress 永久链接强制/在 url 上添加尾随。

所以规范的 URL 是http://www.website.com/page-one/

WordPress 自动 301 重定向http://www.website.com/page-onehttp://www.website.com/page-one/

您的查询字符串未附加到规范 url,它附加到重定向的 URL,这会使 WordPress 混淆并导致 404。

如果你改变http://www.website.com/page-one?mm_campaign=ew328r9283rj293rj239http://www.website.com/page-one/?mm_campaign=ew328r9283rj293rj239应该工作。

于 2013-09-25T14:18:42.150 回答