2010-11-08 125 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