2017-07-14 47 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