重写基于自定义php的电子商务网站的URL

时间:2013-10-01 07:06:45

标签: php mysql .htaccess url-rewriting rewrite

我已经进行了很多实验但是它们对我不起作用,所以我必须把这个查询我需要非常具体的解决方案。

未使用CMS。该网站是使用php开发的电子商务网站

我的网站网址结构

  • 对于产品页面= https://www[dot]sitename.com/product.php?product=productid
  • 对于类别页面= https://www[dot]sitename.com/category.php?category=category-name
  • 对于SubCat Pages = 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 Pages = https://www[dot]sitename.com/category/subcategory/sub-category-name

我怎样才能使用.htaccess?

3 个答案:

答案 0 :(得分:1)

将此添加到您的网络根.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]

答案 1 :(得分: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

答案 2 :(得分:0)

谢谢大家的建议。然而,没有一种方法适合我。让我添加一些关于网站和托管的内容,这可以帮助您分析我的问题并提供替代解决方案。

  1. 该网站托管在Godaddy Shared Hosting上
  2. 网站未使用任何CMS