2015-09-27 110 views
0

如何做你该做的nginx重写规则转换正确nginx的重写规则

example.com/?subtopic=forum &行动= show_board & ID = 1

这个

example.com/forum/board/1

或该

example.com/?subtopic=characters &名称=永恒

到此

example.com/characters/Eternal

I”我发现并试图玩这个代码

location/{ 
      rewrite ^/subtopic/(.*)$ /?subtopic=$1 last; 
    } 

,但它不工作(我是一个真正的新手到重写)

+0

更改规则,这个'改写^ $ /子主题(*)? =字符和名称= $ 1最后;'它的一个步骤,它识别链接中的东西,但是当我尝试查看字符页面时,它表示_Character/Eternal不存在._ –

回答

0

您可以尝试下列规则:

rewrite /(.*)/(.*)/(\d+) /?subtopic=$1&action=show_$2&id=$3 last; 
rewrite /(.*)/(.*)  /?subtopic=$1&name=$2 last; 
+0

它应该仍位于'location/{} ? –

+0

@Rafau它应该在'location'之外。 – Curious

+0

试过了,它只在我进入url' http:// www.example.com/ban'时才有效:'http://example.com/?subtopic = ban'如果我尝试另一个url (可能是我的网站,会尝试一些东西) –