我們重新啓動了我們的WordPress網站前段時間,我試圖否定我們的谷歌爬蟲錯誤。nginx重定向舊wordpress文章
我們有一個簡單模式的引用網址超過10k錯誤。寫一個小腳本並且讓它們一個接一個地被修復是很容易的,但是我想這是否可以通過nginx服務器配置中的一個簡單的重寫規則來解決。
舊模式: {slug}/{id } /引用
應該重定向到:{}塞
可悲的是我在正則表達式RLY壞,並有書面重寫規則的經驗。我所知道的是,我應該有它告訴nginx的,當執行所需的重寫規則的位置,我想在這樣的
location ^.*/trackback {
rewrite ^.*/[0-9].*/trackback /$1
}
當我嘗試這條規則重啓nginx的
當我得到unexpected "}"
錯誤信息
此外,位置模式與重寫語句非常相似,看起來很腥,也許有更好的解決方案?
更新
當前版本:
location ~^(.*)/trackback {
rewrite ^(.*)/[0-9]+/trackback $1 last;
}
語法問題消失了,但不適用該規則/沒有被觸發 這裏的例子
/my-test-article/12312/trackback
現在應該被重定向到 /my-test-article
但它不是
更新2
這一項工作rewrite
規則後(改變last
到redirect
和逃脫斜線)
location ~ ^(.*)\/trackback {
rewrite ^(.*)\/[0-9]+\/trackback $1 redirect;
}
你可能會改變'last'到'redirect'嘗試一個外部重定向。 –
@RichardSmith是的!就是這樣,thx!將更新我的帖子 – braunbeard