.htaccess mod_rewrite排除root

时间:2017-08-28 12:33:18

标签: apache .htaccess mod-rewrite

我在.htaccess中有一个带有此代码的项目:

# If the requested filename exists, simply serve it.
# We only want to let Apache serve files and not directories.
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]

# Rewrite all other queries to the front controller.
RewriteRule ^ %{ENV:BASE}/app.php [L]

所以现在每个请求(显式文件除外)都发送到/app.php。

我想改变这种行为: 如果有人在没有任何其他文件或目录的情况下请求域,则应显示index.php。在所有其他情况下,应该执行给定的行为。

如何实现这一目标?

1 个答案:

答案 0 :(得分:1)

要排除根文件夹,您可以使用以下条件

RewriteCond %{REQUEST_URI} !^/$

尝试:

RewriteCond %{REQUEST_URI} !^/$
RewriteRule ^ %{ENV:BASE}/app.php [L]