Php ApacheHTAccess重写url以实现seo友好性
我正在尝试和失败的时刻重写我的搜索引擎优化友好的网址。你能指出我哪里出了问题吗 我正在尝试重写此url:Php ApacheHTAccess重写url以实现seo友好性,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,我正在尝试和失败的时刻重写我的搜索引擎优化友好的网址。你能指出我哪里出了问题吗 我正在尝试重写此url: http://www.chillisource.co.uk/product?&cat=Grocery&q=Daves%20Gourmet&page=1&prod=B0000DID5R&prodName=Daves_Insanity_Sauce 为此: http://www.chillisource.co.uk/product/Grocery/Dave
http://www.chillisource.co.uk/product?&cat=Grocery&q=Daves%20Gourmet&page=1&prod=B0000DID5R&prodName=Daves_Insanity_Sauce
为此:
http://www.chillisource.co.uk/product/Grocery/Daves%20Gourmet/1/B0000DID5R/Daves_Insanity_Sauce
这是我的.htaccess
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
RewriteRule ^product/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+) /product?&cat=$1&q=$2&page=$3&prod=$4&prodName=$5
第一部分允许我在filenane中不使用.php
当我尝试转到以下位置时,当前会出现错误500:
我读过mod_rewrite,但我是一个新手程序员,觉得很难。我不知道如何将url中的变量$1、$2、$3、$4、$5传递到另一端,([a-zA-Z0-9]+)正确吗
提前感谢。$1对应于重写规则第一部分中的第一组括号$2到第二组括号,依此类推
Daves%20Gourmet
包含一个空格字符,该字符在第二个模式中未被考虑,即第二组括号之间的内容。同样,您没有注意url中的\uuu
我想试试这个
RewriteRule ^product/([a-zA-Z]+)/([\sa-zA-Z0-9]+)/([0-9]+)/([A-Z0-9]+)/([a-zA-Z_]+) /product?&cat=$1&q=$2&page=$3&prod=$4&prodName=$5
假设页面参数始终为整数,并且第四个参数仅包含大写字母 谢谢你,这对以后的使用很有帮助,你可以看看下面的网站。一些非常好的已在运行的重写代码: