Mod rewire缩短url,但最终没有发现错误


Mod rewire to shorten url but end up with not found error

我的网站,基于interspire购物车,生成如下链接:

http://abcd.com/products/Mac-Pro.html (Mac Pro在Apple目录中)

这是非常丑陋的,不seo友好。

我需要它变成下面使用。htaccess mod重写只有

http://abcd.com/Apple/Mac-Pro.html

我用了:

 RewriteRule .* index.php/$0 [PT]

但是我的服务器返回:

未找到

请求的URL/products/在此服务器上找不到。

另外,在尝试…时遇到404 Not Found错误使用ErrorDocument来处理请求。

帮助我缩短url,但不是那个错误。

您需要将您的规则切换为以下内容:

RewriteEngine On
RewriteRule .* /index.php?path=$0 [PT]

这样,被请求的路径将在名为path的查询字符串中无声地传递给index.php脚本。

然后在index.php脚本中,你可以像这样从变量$_GET['path']中获取这个值:

$path_requested = $_GET['path'];