2013-10-01 20 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