htaccess通过匹配部分网址重写网址

时间:2014-04-04 09:43:53

标签: apache .htaccess url-rewriting rewrite

我一直在调整我的重写规则,以涵盖域名移动到其他域名的内容。原始域具有未被重定向的新内容。 我不希望从域到域进行全面重写,因为我有其他格式被重定向,需要单独留下新内容。 旧网址被重定向没有问题,除了1批没有扩展名或参数的静态网址。

旧网址格式:

http://olddomain/(variable string)-c2x(variable integers)

新的网址格式:

http://newdomain/(variable string)-c2x(variable integers)

匹配的唯一常量是-c2x所以我需要重定向所有匹配常量部分和外卡的可变部分的URL

我尝试了各种重写匹配组合,包括(。) - c2x(。)将网址重写为$ 1-c2x $ 2,但我显然已经失去了情节。

我应该遵循规则的格式?

由于

1 个答案:

答案 0 :(得分:0)

将此代码放入DOCUMENT_ROOT/.htaccess文件中:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(www\.)?olddomain\.com$ [NC]
RewriteRule ^.+?-c2x http://newdomain.com%{REQUEST_URI} [L,NC,R=301,NE]