2012-10-19 138 views
0

我有這個重寫規則,檢查URL中的國家代碼,並相應地提取內容。更好的方法來做到這一點htaccess重寫規則

問題是有60多個國家。這可以以不同的方式完成,而不是輸入規則中所有國家的代碼?

RewriteRule ^/?(us|uk|ca)/p([0-9]+)/?$ 

注意(us | uk | ca)部分?還有更多需要去那裏。任何更好的方式來做到這一點?

回答

1
RewriteRule ^/?([a-z][a-z])/p([0-9]+)/?$ 

但如果語言是一個有效的它不檢查(如果你希望擁有超過2個字符的語言代碼,我不知道這樣的事情存在)

編輯:這個正則表達式更短:

RewriteRule ^([a-z]{2})/p\d+/?$ 

第一個斜槓是無用的,\ d +意味着一個或多個數字,看到@ TerryE的評論

+0

我給這是一個嘗試。 – Norman

+0

該模式寫得更好'^([az] {2}/p \ d + /?$'。注意,在'.htaccess'重寫規則中不會看到一個前導斜槓,因爲Perdir預處理會將其除去。 – TerryE

+0

是的,對,我只是複製粘貼(對不起,如果這是錯誤的表達,我是法國人),並修改了什麼想法是相關的,請參閱編輯 –

相關問題