Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 使用htaccess将路径重定向到文件夹_Apache_.htaccess_Mod Rewrite_Redirect - Fatal编程技术网

Apache 使用htaccess将路径重定向到文件夹

Apache 使用htaccess将路径重定向到文件夹,apache,.htaccess,mod-rewrite,redirect,Apache,.htaccess,Mod Rewrite,Redirect,看来这可能是一项容易的任务,但我找不到任何问题的答案 我需要一个使用htaccess的复杂重定向 我有一些带有产品链接的页面: host/shop/cat/some_cat/product_info/some_product 我需要将它们重定向到: host/product_id/product_info/some _product 重要提示:/some_cat/文件夹总是不同的,some_产品页面的扩展名是php,它已经被htaccess规则隐藏 我当前的访问规则是: 任何帮助都将不胜感激

看来这可能是一项容易的任务,但我找不到任何问题的答案

我需要一个使用htaccess的复杂重定向

我有一些带有产品链接的页面:

host/shop/cat/some_cat/product_info/some_product
我需要将它们重定向到:

host/product_id/product_info/some _product
重要提示:/some_cat/文件夹总是不同的,some_产品页面的扩展名是php,它已经被htaccess规则隐藏

我当前的访问规则是:


任何帮助都将不胜感激。谢谢。

使用以下字符串完成此操作:

选项+FollowSymLinks 重写规则^./products\u id/$$2[R,L]


我还将目标文件夹/product\u info/重命名为/prod\u info/以避免冲突。

如何从原始URL获取product\u id?/product\u id/是一个文件夹,它与其他文件夹一样永不更改,除了唯一一个文件夹:/some\u cat/没有回答问题-您希望第一个URL重定向到第二个-如果产品id不在第一个文件夹中,您希望如何填充产品id?如果我没有答对,很抱歉,但我不需要填充文件夹/product\u id/,为了更好地理解,我可以用更简单的格式编写查询:比如我有一个url:host/folder1/folder2/some\u changing\u folder/product\u name,需要将其重定向到host/folder3/folder4/same_product_name。您需要在问题中包含您当前的code.htaccess规则,因为当我们看不到您已经在使用规则做什么时,如何提出建议?一个建议可能会引起冲突。
Options All -Indexes 

DirectorySlash Off 
RewriteEngine on 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+/)*[^.]+\.php 
RewriteRule ^(([^/]+/)*[^.]+)\.php$ example.com/$1 [R=301,L] 
RewriteCond %{REQUEST_FILENAME}.php -f 
RewriteRule ^(([^/]+/)*[^/.]+)$ /$1.php [L] 
RewriteRule ^(.*)/cart.php$ /shop/cart.php?products_id=$1 [QSA]