2017-02-28 43 views
1

我在htaccess上真的很糟糕,我無法弄清楚這一點。重寫爲lang參數

我有以下文件:

/site/.htaccess 

我想創建一個重寫,將改寫:

/site/en/home/ 

到:

/site/home/?lang=en 

和(var只是一個例如,它應該與任何查詢字符串一起使用):

/site/en/home/?var=12345 

到:

/site/home/?var=12345&lang=en 

我怎樣才能做到這一點?我一直在這裏待了1個小時,但卻無法工作。

回答

1

可以在/site/.htaccess使用

RewriteEngine on 

RewriteRule ^en/(.+)/?$ /site/$1/?lang=en [QSA,L] 

QSA QueryStringAppand標誌自動添加addtional的queryString的目標。

+0

謝謝。我怎樣才能抓住「/ home」,這樣我就不用在htaccess中手動添加目錄了? – nbrogi

+0

@nbrogi你可以使用正則表達式捕獲組**(。+)**來獲取它,並使用捕獲的部分使用** $ 1 ** backrefrence。查看更新後的規則。 – starkeen

+0

它奇妙地工作。謝謝。 – nbrogi