2010-11-08 122 views
-1

everyone 我在這裏有一個問題。 我的網站的頁面, 這意味着供電,遊客都應該參觀像這樣的鏈接:Apache重定向規則Needed.Thanks!

hxxp://www.example.com/wiki/SOMETHING 

我想,如果他試圖訪問別的東西將用戶重定向到主頁:

hxxp://www.example.com/NOTwiki/SOMETHING -> hxxp://www.example.com/wiki/Main_Page 

hxxp://www.example.com/NOTwiki -> hxxp://www.example.com/wiki/Main_Page 

和 「/維基」 區分大小寫, 這意味着:

hxxp://www.example.com/WiKi/SOMETHING -> hxxp://www.example.com/wiki/Main_Page 

我使用的是虛擬主機是這樣的:

<VirtualHost 12.34.56.78:80> 
ServerName example.com 
ServerAdmin [email protected] 
ServerAlias www.example.com 
DocumentRoot /srv/www/example/public_html/mediawiki/ 
ErrorLog logs/AP/error_log 
</VirtualHost> 

我是新上的Apache和仍然在學習。
請具體說明。

非常感謝!

+0

此問題屬於Serverfault。它應該移到那裏。 – 2010-11-08 03:49:55

+0

對不起。我剛來這地方。 – DocWiki 2010-12-07 22:39:55

回答

1

這個配置應該是:

<IfModule mod_rewrite.c> 
    RewriteBase/
    RewriteEngine on 

    RewriteCond %{ENV:REDIRECT_STATUS} 200 
    RewriteCond %{REQUEST_URI} ^index.php 
    RewriteRule .* - [L] 

    RewriteRule !^wiki(/.*)?$ wiki/Main_Page [R=301,L] 

</IfModule> 

的的RewriteCond /重寫規則說「如果路徑的起點是不/維基,使用301重定向重寫所有URLS到/維基/ Main_Page(R = 301) ,並且不再處理任何規則(L)「

+0

非常感謝mootinator!我真棒! – DocWiki 2010-11-08 04:17:05

+0

我應該把上面的代碼放在哪裏?非常感謝! – DocWiki 2010-11-08 04:18:11

+0

我相信它可以進入配置塊。或者,您可以將其放入Web服務器根目錄中的.htaccess文件中。 – 2010-11-08 04:21:43