2017-07-14 44 views
1

我有一个简单的问题。我需要在客户端的Joomla安装中重定向陌生的URL。重定向301 for?index.php

我有一个链接,如example.com/?index.php,我需要重定向到example.com/.htaccess

我尝试以下,但它不工作

Redirect 301 /?index.php/
+0

你确定里面有一个问号吗?在你的网址?语法对我来说看起来很奇怪。查询字符串应该跟在'index.php'之后而不是它之前 – Bwrites

+0

是的,谷歌索引它,我不知道这个问号的来源,这就是为什么我需要重定向它, – CommanderSpock

回答

0
example.com/?index.php 

在这个URL中, index.php位于URL的查询字符串部分。你不能使用mod_alias Redirect来捕捉这个,你必须使用mod_rewrite。

在靠近.htaccess文件的顶部(现有RewriteEngine指令后),请尝试以下操作:

RewriteCond %{QUERY_STRING} ^index\.php$ 
RewriteRule ^$ /? [R,L] 

替代末的?有效地从请求的查询字符串。

这也是一个临时(302)重定向,只有在确定工作正常后才能将R更改为R=301

+0

是啊!它的工作现在,谢谢,重定向使它的工作。 – CommanderSpock

0

尝试用一个绝对的URL来作为目标:

Redirect 301 /?index.php http://www.yourdomain.com/ 
+0

不工作,我试图与域和没有,不知道该怎么做:/ – CommanderSpock

+0

meybe和RuleCond有什么关系?但在Joomla我不知道如何构建它。 – CommanderSpock

+0

你可以发布完整的.htaccess文件,所以我们可以看看你的规则/条件。 – trpx