请帮忙从htaccess的:重写URL
http://www.site.com/index.php?cat=catname
和
http://www.site.com/index.php?id=productname
重写URL是这样
http://www.site.com/catname
和 http://www.site.com/productname
我认为这将需要PHP的检查,如果该页面是与它的猫工作作为猫 或.htaccess文件与它自己的产品作为工作产品
请帮忙从htaccess的:重写URL
http://www.site.com/index.php?cat=catname
和
http://www.site.com/index.php?id=productname
重写URL是这样
http://www.site.com/catname
和 http://www.site.com/productname
我认为这将需要PHP的检查,如果该页面是与它的猫工作作为猫 或.htaccess文件与它自己的产品作为工作产品
:
RewriteEngine On
RewriteRule ^([0-9a-z\-\_]+)?$ /index.php?id=$1 [L,QSA,NC]
类别/产品的检查必须在index.php中完成...
或者,您可以添加额外的蛞蝓
RewriteRule ^(category)/([0-9a-z\-\_]+)?$ /index.php?category=$1 [L,QSA,NC]
RewriteRule ^(product)/([0-9a-z\-\_]+)?$ /index.php?product=$1 [L,QSA,NC]
,但URL看起来像http://site.com/category/catname
谢谢你的回答给煤弄黑, 确定我可以用它在2页 '的index.php?猫= catname' & 'product.php?name =产品名称' 必须htaccess的用它来像 ' http://www.site.com/catname' 和 'http:// www.site.com/productname' 可以这样工作 ==> 'RewriteRule ^([0-9a-z \ - \ _] +)?$ /index.php?cat=$1 [L,QSA,NC]' 'RewriteRule ^([0-9a-z \ - \ _] +)?$ /product.php?name= $ 1 [L,QSA,NC]' – samarlover
与方案的问题是,你不能告诉它是否是一个目录名或URL中的产品名称。其结果是,你可能会想是这样的:
http://www.site.com/Catalog/catname和http://www.site.com/Product/productname
然后可以在.htaccess文件以下规则执行:
RewriteEngine On
RewriteRule ^Catalog/(.+)$ /index.php?cat=$1 [L]
RewriteRule ^Product/(.+)$ /index.php?id=$1 [L]
问题纯粹关于服务器和主机配置问题更适合于serverfault.com。我已经投票通过了这个问题。你不需要做任何事情,但是如果有足够的其他用户同意我的观点,它会自动为你移动。 – Flexo