.htaccess中的通配符

时间:2015-01-30 15:53:53

标签: apache .htaccess mod-rewrite redirect coldfusion

我们有数百个需要301重定向的coldfusion文件。

他们遵循以下格式:/info2.cfm?info_id = [id]

e.g:

www.example.com/info2.cfm?info_id=102555 www.example.com/info2.cfm?info_id=109180 www.example.com/info2.cfm?info_id=106167

我们如何将包含上述任何内容的所有网址重定向到根域?所以基本上301重定向所有URL而不是包含

info2.cfm?info_id=

由于

2 个答案:

答案 0 :(得分:1)

您可以在DOCUMENT_ROOT/.htaccess文件中使用此代码:

RewriteEngine On

RewriteCond %{QUERY_STRING} (^|&)info_id=.+ [NC]
RewriteRule ^info2\.cfm$ /? [R=301,L]

答案 1 :(得分:0)

您可以通过Apache中的httpd.conf(或其他.conf文件)创建Redirect(假设您正在使用Apache)。在其中,将有一个选项来添加您的重定向。你可以包括

Redirect info2.cfm where_you_want_it_to_redirect
<Directory where_you_want_it_to_redirect>
  Order allow,deny
  Allow from all
</Directory>

...或

RedirectMatch info2.cfm(.*) where_you_want_it_to_redirect$1
<Directory where_you_want_it_to_redirect>
  Order allow,deny
  Allow from all
  Options +FollowSymLinks
</Directory>

...如果您还想使用正则表达式功能。

每次执行此操作时,您都需要重新启动Apache。