我必须创造一个条件,重定向到其他网址的网站,我认为这是相当复杂的条件。
#RewriteRule (pl)?(/page/5/?)$ /polityka-prywatnosci/ [R=301,L]这是我这个重定向的基础,但是我需要排除/page/5/之前的一些单词,例如单词'car‘,这样当这个单词出现时,就不会执行这个重定向。让一切变得清晰:当我得到:http://some-url/page/5时,我想把它重定向到http://some-url/polityka-prywatnosci/,但当有http://some-url/car/page/5时,我想留在这个URL上。我尝试了这样的技巧:#RewriteRule (pl)?[^(car)](/page/5/?)$ /polityka-prywatnosci/ [R=301,L],但它不起作用。克服它的可能性是什么?
发布于 2016-07-25 03:17:11
如果允许负向回看,您可以尝试使用:
RewriteRule (?<!car|car/pl)(/pl)?(/page/5/?)$ /polityka-prywatnosci/ [R=301,L]参见regex demo。
另一种方法是声明3个连续的替换:
RewriteRule (/page/5/?)$ /polityka-prywatnosci/ [R=301,L]
RewriteRule (car|car/pl)/polityka-prywatnosci/$ $1/page/5/ [R=301,L]
RewriteRule /pl(/polityka-prywatnosci/)$ $1 [R=301,L]https://stackoverflow.com/questions/38555369
复制相似问题