2010-02-01 37 views
0

我试图重写使用以下到htaccess的 - 重定向301.htaccess的修改字符串,然后重定向301

重定向“mysite.com/longname/{20字符串}”到“mysite.com/shortname/ { 10字符串}”

基本重定向‘LONGNAME’到‘短名称’和削减‘20字符串’的前10个字符

所以当我去mywebsite.com/longname/aaaaabbbbbcccccddddd, 它将其重写为mywebsite.com/shortname/aaaaabbbbb

这是我到目前为止有:

RewriteEngine On 
RewriteRule /longname/(.*) /shortname/$1 [R=301,L] 
+0

你已经看起来有效。你可能需要在'longname'之前丢失初始斜线,否则它看起来是正确的。 – 2010-02-01 04:25:53

+0

谢谢Max!你的建议,加上下面的答案,做到了! – tim 2010-02-01 05:04:49

回答

0

您应该能够使用正则表达式来限制输入,如:

RewriteEngine On 
RewriteRule /longname/(.{0,10}) /shortname/$1 [R=301,L] 

这将匹配以下的0-10个字符的字符串/ LONGNAME /。

+0

谢谢。 你的代码工作,减去“长名称”之前的初始斜线(谢谢Max S.) – tim 2010-02-01 05:03:57