這些是我的重寫規則。第一條規則是有問題的,它是我試圖達到的目標。最後四項工作,但這是一個矯枉過正。apache中的凝結重寫規則
RewriteRule ^([^/^.]+)/([0-9]{4})([a-z]{3})([0-9]{2})/p(([0-9]{1,5})-([0-9]{1,3}))?$ /test2-$1-$2-$3-$4-$5-$6
RewriteRule ^([^/^.]+)/([0-9]{4})([a-z]{3})([0-9]{2})/p([0-9]{1,5})-([0-9]{1,3})$ /test-$1-$2-$3-$4-$5-$6
RewriteRule ^([^/^.]+)/([0-9]{4})([a-z]{3})([0-9]{2})/p([0-9]{1,5})-$ /test-$1-$2-$3-$4-$5
RewriteRule ^([^/^.]+)/([0-9]{4})([a-z]{3})([0-9]{2})/p([0-9]{1,5})$ /test-$1-$2-$3-$4-$5
RewriteRule ^([^/^.]+)/([0-9]{4})([a-z]{3})([0-9]{2})/p$ /test-$1-$2-$3-$4
我試圖做的是使用一個重寫規則,而不是四個處理下列格式的URL:
http://example.com/word/####wor##/p#-###
http://example.com/word/####wor##/p#-
http://example.com/word/####wor##/p#
http://example.com/word/####wor##/p
有沒有什麼辦法可以凝聚我的RewriteRules只是一個替代四?
如果需要,我會在後面添加更多信息。
只是爲了澄清:在你想匹配的URL中,'#'代表任何數字,'wor'可以是任何3個字母(而不僅僅是這三個,按照這個順序),但'p'應該總是匹配字母'p'? – Kay
這就是正確的 – Mike