2017-01-03 98 views
-1

我正在apache上運行一個網站,我面臨的問題如下。.htaccess重定向問題與重寫規則

實際的鏈接看起來是這樣的: www.domain.com/my-account/profile-view.php?id=1018428

其中ID是用戶的用戶ID。

現在我的.htaccess看起來是這樣的:

RewriteRule ^my-account/([0-9]+)/([a-zA-Z0-9-]+)$ my-account/profile-view.php?id=$1 

基本上我想要的網址重寫這樣的:

www.domain.com/my-account/15/Craig

我已經做了上述htaccess線不同的排列,似乎沒有工作。任何幫助,將不勝感激 。

P.S:我的htaccess工作正常,正在被服務器讀取。

+0

'15'與'1018428'有什麼關係? – arkascha

+0

「沒有任何工作似乎」是什麼意思?你得到了什麼結果?錯誤消息?哪一個?什麼都沒發生?白屏?宇宙是否內爆? – arkascha

+0

它被重定向到錯誤頁面。是15或1018428,沒關係,他們只是ID –

回答

0

也許這將幫助你

RewriteRule ^my-account/([0-9]+)/([a-zA-Z0-9-]+)/$ my-account/profile-view.php?id=$1&name=$2 [nc,l] 

需要兩個變量,因爲你有兩個正則表達式中您的網址:
- ([0-9] +)的ID
- ([A- ZA-Z0-9 - ] +)作爲用戶名

在NC標誌意味着非區分大小寫(因此克雷格也將匹配克雷格)
的升標誌表示「最後」,當規則被驗證,停止處理該點以下的htaccess規則

+0

這不是OP要求的。問題清楚地顯示了所需的內部目標URL的結構。那裏沒有「名字」參數。 – arkascha

+0

@arkascha是這個例子中的缺失 – andrew