2015-06-10 35 views
0

我的URL:mod_rewrite的三個參數

localhost/categories?DPt=MQ==&CTg=MQ==&NLs=Mw== 

我想這樣:

localhost/product-a/departure-a/categories-a/ 

我的htaccess:

<IfModule mod_rewrite.c> 
    RewriteRule ^confirmation/?$ confirmation.php [NC,L] 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule ^/?([^/]+)/?$ products.php?PDt2=$1 [QSA,NC,L] 
    RewriteRule ^/?categories/([^/]+)/?$ categories.php?DPt=$1&CTg=$2&NLs=$3 [QSA,NC,L] 
</IfModule> 

但事實並非如此。 有什麼不對?

+1

這些規則似乎確實不匹配您正在嘗試做任何事情。什麼是真正的URL,你想讓它看起來像在瀏覽器中? –

+0

products-b/departure-b/categories-b/ – dev20152015

+0

這沒有幫助。它應該改寫成什麼?帶參數的真實網址。 –

回答

0

這是我的版本的.htaccess與內部意見:

<IfModule mod_rewrite.c> 
    # stop rewrite if matches existing file or directory 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule .* - [L] 

    # redirect trailing slash 
    RewriteRule ^(.+)/$ /$1 [R=301,L,QSA,NE] 

    # confirmation 
    RewriteRule ^confirmation$ /confirmation.php [L] 

    # match everything except slash to product 
    RewriteRule ^([^/]+)$ /products.php?PDt2=$1 [QSA,L] 

    # match categories 
    RewriteRule ^(.+)/(.+)/(.+)$ /categories.php?DPt=$1&CTg=$2&NLs=$3 [QSA,L] 
</IfModule> 
+0

返回錯誤:未找到在此服務器或categories.php上未找到請求的URL /類別內部服務器錯誤服務器遇到內部錯誤或配置錯誤,無法完成您的請求。 – dev20152015