当用户尝试使用直接URL访问资产时,如何将用户重定向到登录页面

时间:2015-03-30 12:52:36

标签: php .htaccess session redirect

所以我有一个完整的工作网站,用户可以登录和注册。现在,当用户登录时,我创建了一个用户会话并使用它来维护登录状态。

现在我的网站上的视频内容很少,这些内容都存放在我的服务器中。这些假设只有在用户登录时才可访问。但是现在任何拥有媒体直接链接的人都可以在不登录的情况下查看它们。

当前的webiste文件夹结构如下所示: enter image description here

所以我想解决两个问题:

  1. 如果用户尝试直接访问该链接而未登录,则应重定向到登录页面。
  2. 如果用户已经登录,即使使用直接链接,他也应该能够查看资源吗?
  3. 您建议采用什么方法?我不想阻止用户使用.htaccess强制身份验证,因为某些移动浏览器不支持此操作,并且希望将用户重定向到登录页面以进行无法授权访问。

1 个答案:

答案 0 :(得分:0)

除了PHP之外,你不能在PHP中使用PHP Session,因此如果你想让用户必须使用PHP登录,那么他们必须通过PHP访问该文件。要做到这一点,你需要我们htaccess重写将媒体请求重定向到PHP页面。这样的事情应该有效:

RewriteEngine On
RewriteRule ^(.*)\.mp4$ media.php?file=$1 [L]

然后在media.php中,您可以对用户进行身份验证或将其重定向到登录页面。如果他们已登录,您可以为他们提供文件。