2012-05-10 82 views
-1

问题,我有一个阿帕奇表达: RewriteEngine On RewriteRule ^(.*)$ 2012/$1 [L]重定向和重写 - 与子目录

我的应用程序是在“2012”文件夹中。 我想要有人输入www.mysite.com重定向到www.mysite.com/2012 但URL必须继续www.mysite.com

这是用我目前的正则表达式完成的。

但是我不能访问其他subdirs来分配其他图像,所有这些例如去www.mysite.com/2012/newsletter。

如何让www.mysite.com/newsletter工作?

+0

为什么你不能用'标题( “位置:...”)在''index.php'? – VisioN

+0

您当前的重写规则表示您希望将每个请求重定向到2012文件夹。您必须对重写规则之前要访问的所有页面进行硬编码,或者将当前规则更改为更灵活的 – Darvex

+0

,因为我不希望2012文件夹保留在URL中。 –

回答

1

这应该工作:

RewriteEngine On 
# If request starts with 'newsletter' no further rule is processed 
RewriteRule ^(newsletter) - [L] 

# If first rule doesn't match, rewrite everything not starting with '2012' to the '2012 subfolder 
RewriteCond %{REQUEST_URI} !^/2012/.*$ 
RewriteRule ^(.*)$ /2012/$1 [L] 
+0

mysite.com/newsletter仍将被重定向到mysite.com/2012 – Darvex

+0

我无法访问其他子目录中的imagem。 –

+0

解决方案正在进行时不要冷静下来,这没有任何意义。尝试新的编辑 – blang