如何检查cookie是否存在以允许用户继续图像?
问题描述:
我需要限制只有登录用户才能访问配置文件映像。我一直在readingsomepostsabouthow要做到这一点,但没有找到让我明白如何去做的例子。也许我只是不明白,因为我不太了解.htaccess规则。如何检查cookie是否存在以允许用户继续图像?
我已经试过:
order allow, deny
deny from all
但它拒绝访问所有(DOH),包括我自己。我无法使用IP地址。
我没有在URL中使用会话ID,但我使用php脚本(当用户登录时首先生成会话的同一个脚本)检查登录用户。
所以我想也许我可以实施cookie检查?
我目前没有使用cookie,但每次用户登录时都可以创建一个cookie,并在用户注销时销毁它。所以我的问题是:
Cookie检查是否足够安全,高性能的选项?
如果是这样,我该怎么做那个检查?
我已经走了这么远,明白这一点:
RewriteEngine On
RewriteBase/
# search for image files
RewriteCond %{REQUEST_FILENAME} ^.*(jpg|jpeg|png|gif)$
# look for my cookie
RewriteCond %{HTTP_COOKIE} !^.mycookie.$ [NC]
如何检查是否存在Cookie,然后允许继续的形象呢?
请注意,图像显示嵌入在我的网站内每个配置文件.php文件。
感谢您的帮助!
答
尝试使用$_SESSION
数组,您可以使用session_start()
创建会话并使用session_destroy()
将其销毁,它比cookie更容易验证会话。 你也可以创建一个会话时发送的参数,例如
$parameters = array('param1' => 'value', 'param2' => 'value2' /* paramN => valueN*/);
session_start($parameters);
,并验证它像这样
if(isset($_SESSION)){
//Do stuff
}
你也可以检查一个特定的参数是在会话
if(isset($_SESSION['param1'])){
//Do another thing
}
为什么-1没有解释的投票? – Rosamunda