301重定向:index.php

时间:2014-12-10 16:00:58

标签: php .htaccess redirect

我熟悉重定向最后没有文件类型的URL,但不熟悉最后有.php的URL。

我正在处理的网站在Google上有数百个索引页面,这些页面位于网址的开头:http://example.com/index.php?,之后会有更多信息。

一个例子是:http://example.com/index.php?main_page=index&cPath=1_18

网站的新索引为http://example.com/indexhttp://example.com

如果我将http://example.com/index.php作为要重定向的网址,它是否还会重定向所有index.php?或者我是否需要将http://example.com/index.php*作为要重定向的网址或{{1} }?

谢谢!

2 个答案:

答案 0 :(得分:2)

如果要执行的主脚本是index.php,那么将url重定向到自身是没有意义的......

关于url中的那些GET参数,如果index.php没有使用它们,那么......它们将是无用的,但是......那就是XD

关键是:一切都在没有重定向的情况下有效吗?如果是这样,为什么要重定向?

如果有301重定向,......这将意味着对服务器的更多请求,对于那些带宽较低的客户端,它确实有所作为。

BTW,请看一下:htaccessredirect

答案 1 :(得分:1)

尝试:

RedirectMatch 301 ^/index\.php$ /

(或)

RedirectMatch 301 ^/index\.php$ /index

末尾的查询字符串将自动附加。

如果您现在正在使用wordpress,那么您将无法像上面那样使用mod_alias指令。你需要使用mod_rewrite并将这些规则置于 wordpress规则之上:

RewriteCond %{THE_REQUEST} \ /+index\.php
RewriteRule ^ / [L,R=301]

(或使用/

替换最后的/index