1

我有 tinycms 应用程序,如何将所有流量转发到文档根目录?

例子:

http://<IP-address>/ADFADSF/adsfadsf --> /
http://domain.com/adsf --> /

目前,我的 .htaccess 中有这个

<Files .htaccess>
order allow,deny
deny from all
</Files>
Options +FollowSymLinks
RewriteRule admin/$ index.php?view=admin [QSA]
Options -Indexes

谢谢。詹姆士

4

1 回答 1

0

使用 mod_rewrite:

RewriteRule ^/?.+$ / [L,R]

使用 mod_alias:

RedirectMatch ^/.+ /

当然,这会使RewriteRule admin/$ index.php?view=admin [QSA]规则变得无用,或者至少会引起一些冲突。因此,您应该评论该排除,或者创建一个特殊的例外,其中除了admin/重定向之外的所有流量。


编辑:

除了 admin/ 之外,我将如何制定规则?

这是一种方法,我只是猜测这是您想要的行为。这些东西没有改变,它的方式很好:

<Files .htaccess>
order allow,deny
deny from all
</Files>
Options +FollowSymLinks -Indexes

添加一个:

RewriteEngine On

然后:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/(index\.php|admin)
RewriteRule ^/?.+$ / [L,R]

RewriteRule admin/$ index.php?view=admin [QSA,L]

因此,将所有这些放在一起,您就可以拒绝访问.htaccess文件。然后你有你的Options,然后你的重写规则。您需要打开 RewriteEngine,然后重定向任何不是/index.php或的请求/admin,然后在内部重写 /admin/index.php.

于 2012-10-01T08:31:22.380 回答