如果包含单词,请更改所有请求

时间:2015-09-05 11:28:29

标签: .htaccess

如果请求包含短语“ajax”,我想在项目中更改所有请求uri。例如,我现在有:

http://www.address.com/ajax/getIdeas

当用户更改语言时,会在网址中添加/ru/。所以链接变成http://www.address.com/ru/ajax/getIdeas并且它不起作用。我想要做的就是通过.htaccess更改包含单词ajaxru的所有链接。因此,如果请求为http://www.address.com/ru/ajax/getIdeas,则应将其重定向到http://www.address.com/ajax/getIdeas。怎么做?

2 个答案:

答案 0 :(得分:1)

您可以在DOCUMENT_ROOT/.htaccess文件中使用此规则来删除网址的两位数字语言:

RewriteEngine On

RewriteRule ^[a-z]{2}/(ajax/.*) /$1 [L,NC,R=301]

答案 1 :(得分:1)

我建议不要制定规则来重写或重定向你的ajax请求。重定向将导致您的POST ajax请求停止工作。一般而言,您的重写将导致额外的,不必要的工作发生。

在您的情况下,我建议您修复脚本,以便在不会导致不同结果的情况下使用特定于语言的ajax请求。您将使用相对于您的根(/ajax/page)而不是相对于当前网址(ajax/page)的网址。