在 apache 中重定向 aspx

在 apache 中重定向 aspx

我有一个 ASP.NET 网站,现在我们将其移至 WordPress。.NET 网站中的页面包含参数。

我想将旧页面重定向到新位置,但 Apache 似乎不理解参数,因此当我在 .htaccess 中写入这样的重定向时,它们不起作用:

redirect 301 /Apps/WW/Page.aspx?ws=4ed09703-8210-4492-a86a-128c1b9822b3&page=458f828d-616d-469d-8fe2-13d3c2881df3 http://s.ort.org.il/redirects/

我想到的解决方案是创建一个 /Apps/WW/ 目录,并在其中创建一个 Page.aspx 文件,然后将其重定向到 WordPress 页面(称为重定向), 像这样:

redirect 301 /Apps/WW/Page.aspx http://s.ort.org.il/redirects/

并且在重定向页面,在PHP中,分析参数并通过PHP进行重定向。

这是个好的解决方案吗?这似乎有点太复杂了,而且我不是系统人员(我是一名 Web 程序员),所以我不知道还有其他解决方案

答案1

通过与 WordPress 支持人员沟通,我发现重定向或重写规则不支持查询参数。

他们确认我应该在 .htaccess 中编写一个重写规则,将不带参数的页面重定向到 php 文件,并且在该文件中我应该使用 php 分析参数并相应地重定向。我不需要创建 /Apps/WW/ 目录,并在其中创建 Page.aspx 文件。reidrect 不需要它。

他们还建议,执行重定向的 php 文件不应该位于 WordPress 中,因为它将为这些 URL 加载整个 WordPress 环境,因此性能不佳。这是不必要的。

相关内容