2013-10-01 23 views
0

我已經嘗試了很多,但他們沒有爲我工作,所以我必須把這個查詢,我需要非常具體的解決方案。重寫基於自定義PHP的電子商務網站的URL

不使用CMS。該網站使用PHP的電子商務網站開發

我的網站URL結構

  • 對於產品頁數= https://www[dot]sitename.com/product.php?product=productid
  • 對於類別頁面= https://www[dot]sitename.com/category.php?category=category-name
  • 對於SUBCAT頁= https://www[dot]sitename.com/category.php?subcategory=sub-category-name

我要

  • 對於產品頁數= https://www[dot]sitename.com/product/productid/
  • 對於類別頁面= https://www[dot]sitename.com/category/category-name
  • 對於SUBCAT頁= https://www[dot]sitename.com/category/subcategory/sub-category-name

我怎樣才能做到這一點使用的.htaccess?

+0

請參閱http://stackoverflow.com/questions/1039725/how-to-url-re - 寫入功能於PHP – sjkon

回答

0

以下htaccess規則適用於我,並希望這些規則適用於您。

RewriteEngine On # Turn on the rewriting engine 

RewriteRule ^category/([A-Za-z0-9-]+)/?$ category.php?category=$1 [NC,L] # Handle category 

RewriteRule ^category/subcategory/([A-Za-z0-9-]+)/?$ category.php?subcategory=$1 [NC,L] # Handle sub category 

RewriteRule ^product/([A-Za-z0-9-]+)/?$ product.php?product=$1 [NC,L] # Handle product 
1

這在Web根目錄添加到您的.htaccess/目錄

RewriteEngine on 
RewriteBase/

# Products  
RewriteCond %{REQUEST_FILENAME} !-d # not a dir 
RewriteCond %{REQUEST_FILENAME} !-f # not a file 
RewriteRule ^product/([^/]+)/?$ product.php?product=$1 [NC,QSA,L] 

# Categories 
RewriteCond %{REQUEST_FILENAME} !-d # not a dir 
RewriteCond %{REQUEST_FILENAME} !-f # not a file 
RewriteRule ^category/([^/]+)/?$ category.php?category=$1 [NC,QSA,L] 

# Sub-categories 
RewriteCond %{REQUEST_FILENAME} !-d # not a dir 
RewriteCond %{REQUEST_FILENAME} !-f # not a file 
RewriteRule ^category/subcategory/([^/]+)/?$ category.php?subcategory=$1 [NC,QSA,L] 
0

謝謝大家的建議。然而,沒有任何方法爲我工作。讓我再添加一些有關該網站和託管的東西,這可能會幫助您分析我的問題並提供替代解決方案。

  1. 該網站上的Godaddy虛擬主機
  2. 網站託管沒有使用任何CMS