使用mod_rewrite更改url前缀

时间:2013-11-06 15:32:53

标签: apache .htaccess mod-rewrite

我想在网站上更改静态html网页上的多个网址,以便它们更具描述性。页面太多,无法为每个页面使用简单的重定向。实际页面内容只会随着产品的变化而缓慢变化。

站点主机允许访问与站点内容相同的ftp文件夹中的.htaccess,但我无法编辑上面文件夹中的.htaccess。

典型例子:

我想要所有网址开始" estuc2 _"重定向到" expositores - "

e.g。 /estuc2_4.html成为/exoresores-4.html

或者urls开头" bolsa3 _"重定向到" bolsas-papel-con-asa-3"

e.g。 /bolsa3_1.html成为/bolsas-papel-con-asa-3.html

已经在网上阅读了大量有关htaccess,mod_rewrite,redirect等的内容,但是我无法完成这项工作并且会对某些代码感激不尽。另外,我不清楚我是否应该在字符串前面加上" /"。

由于

1 个答案:

答案 0 :(得分:0)

尝试将这些规则添加到文档根目录中的htaccess文件中:

RewriteEngine On
RewriteRule ^estuc2_(.*)$ /expositores-$1 [L,R=301]
RewriteRule ^bolsa3_(.*)$ /bolsas-papel-con-asa-3$1 [L,R=301]

至于:

  

另外,我不清楚我是否应该在字符串前加上“/".

在htaccess文件或<Directory>容器中使用mod_rewrite规则时,会删除前导斜杠,因此无法与之匹配。