只有登录后,Apache mod_rewrite才会掉线?

时间:2017-01-24 14:08:43

标签: php apache .htaccess mod-rewrite

我使用以下.htaccess激活mod_rewrite:

RewriteEngine on
RewriteRule ^(uploads|dist|doc|includes/languages)($|/) - [L]
RewriteRule !\.(js|ico|gif|jpg|png|css|html|swf|mp3|wav)$ index.php [NC,L]

除了调用一些公共文件夹之外,每次调用都会被重定向到index.php,在那里我初始化我的PHP应用程序。

我使用phpDocumentor生成文档。所有文档都进入{root dir}/doc。本文档中的每个页面都有自己的*.html。因此,只有直接访问.html文件才能进行访问 通过排除.htaccess中的doc目录,我可以访问内容,但其他人也可以访问。

我想要做的是使用主应用程序的登录,只允许某些登录的人阅读我的文档。

这可能是使用一些Apache设置,编辑.htaccess文件,还是使用聪明的PHP技巧?

修改

我忘了提及:我无法编辑生成的文档。 这些文件每15分钟自动更新一次。 我无法向这些文件添加任何代码......

1 个答案:

答案 0 :(得分:0)

您可以通过向

等文档页面的标题添加内容来重定向未登录的用户
if (!$loggedIn) {
    header('Location: /');
}

其中$loggedIn是用户是否登录的条件。