Php 饼干不';不要被移除

Php 饼干不';不要被移除,php,.htaccess,cookies,Php,.htaccess,Cookies,我的cookie确实有问题:目录/admin中有login.php。我使用.htaccess重写URL,因此用户通过在domain.com/admin/login中提示来调用登录表单,成功登录后,用户可以在管理区域中冲浪:domain.com/admin/dashboard(依此类推)。如果用户希望永久登录,登录文件将设置cookie: setcookie('sid',$sid,time()+3600',/') 到目前为止,一切顺利。但是在管理仪表板中,有一个指向domain.com/admin

我的cookie确实有问题:目录
/admin
中有
login.php
。我使用.htaccess重写URL,因此用户通过在
domain.com/admin/login
中提示来调用登录表单,成功登录后,用户可以在管理区域中冲浪:
domain.com/admin/dashboard
(依此类推)。如果用户希望永久登录,登录文件将设置cookie:

setcookie('sid',$sid,time()+3600',/')

到目前为止,一切顺利。但是在管理仪表板中,有一个指向
domain.com/admin/logout
的链接,该链接也会调用
logout.php
文件,该文件也位于
/admin
目录中

logout.php
检查cookie是否已设置,然后尝试取消设置cookie:

setcookie('sid','',time()-3600',/')

我尝试用多种方式设置过期日期,所以我认为这不会导致问题。然后我尝试设置域参数。因为这应该是一个针对不止一个客户的CMS,所以我必须设置一个动态域(我通过
$\u SERVER['SERVER\u NAME'];
),但这不起作用

有人知道我能做些什么来解决这个问题吗


提前谢谢

您手动管理cookie而不是使用PHP的
$\u会话
,有什么具体原因吗?(并不是说手动使用cookies是错误的,但是已经有一个非常好的工具存在)您是否尝试过确保它们是相同的SESSHID?在浏览器中添加
document.cookie
以确认相同的
PHP SESSHID
并尝试
$\u cookie['sid']=null
如果用户登录,则询问他是否希望登录更长时间。如果他想在关闭浏览器时注销,则使用$\u会话['sid']。但据我所知,在浏览器打开之前不可能使用$\u会话。所以这是因为舒适的原因。@PhilipTsang是的,他们也有同样的原因$_COOKIE['sid']=NULL不会更改(或删除)COOKIE。