2011-07-12 86 views
0

我要重寫以下URL Apache中:Apache的URL重寫(mod_rewrite的)和UUID

abc.php?id=1234&token=xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx 

其中xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx是V4 UUID

我試圖做出這樣的重寫規則:

RewriteRule ^/ABC/([0-9]+)$/^([0-9a-fA-F]){8}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){12}.([0-1]){1}/ /abc.php?id=$1&token=$2 

但它似乎並沒有真正的工作。

我想我需要一個正則表示V4 UUID的正則表達式,但只是簡單的正則表達式來表示UUID字符串中的字符和連字符,任何人都有在Apache正則表達式中的好主意?

回答

2

這是你想要什麼:

RewriteRule ^/ABC/([0-9]+)/([a-zA-Z0-9\-]+)$ abc.php?id=$1&token=$2 

如果您想進一步驗證令牌,倒不如在PHP這樣做,看到這是它的預期用途。