Session cakephp具有相同的蛋糕库和共享会话的多个应用程序
我让cakephp作为我们公司的公共网站运行应用程序,老板让我创建另一个应用程序,让他们使用相同的用户帐户和权限管理办公室活动 在本地开发PC上,该项目位于Session cakephp具有相同的蛋糕库和共享会话的多个应用程序,session,cakephp,authentication,Session,Cakephp,Authentication,我让cakephp作为我们公司的公共网站运行应用程序,老板让我创建另一个应用程序,让他们使用相同的用户帐户和权限管理办公室活动 在本地开发PC上,该项目位于D:/wamp/www/blackstone 我刚刚复制了D:/wamp/www/blackstone/app,并将其粘贴在同一位置,命名为office 应用程序文件夹路径为: D:/wamp/www/blackstone/app D:/wamp/www/blackstone/office 我已在“office”appController中
D:/wamp/www/blackstone
我刚刚复制了
D:/wamp/www/blackstone/app
,并将其粘贴在同一位置,命名为office
应用程序文件夹路径为:
D:/wamp/www/blackstone/app
D:/wamp/www/blackstone/office
我已在“office”appController中提交“IsAutoized”、“Auth”和“Session”组件,以防止检查登录。正在使用以下URL访问应用程序:
localhost/blackstone
localhost/blackstone/office
我想在office
中访问blackstone
的“会话”。我还没有找到解决办法
目前我在黑石blackstone
中有core.php
作为:
Configure::write('Session', array(
'defaults' => 'cake',
'cookie' => 'my_app',
'timeout' => 500, // 8 hours + 20 min,
'cookie_path' => '/',
)
);
office
应用程序中的core.php
:
Configure::write('Session',数组(
“默认值”=>“蛋糕”,
“cookie”=>“我的应用程序”,
“超时”=>500,//8小时+20分钟,
“cookie_路径”=>“../”,
)
);
这导致了更多的变化
我可以尝试和更改什么?在调试类似的东西时,最好尝试设置最简单、最愚蠢、最不容易出错的参数,以确保您可以首先让它正常工作,然后慢慢增加生产中使用的复杂度(例如,更安全),以准确地看到可能出现故障的地方 首先,确保在core.php中确保在两个应用程序中都设置Security.level=“low”。否则,应用程序会进行会话参考者检查(如果“中等”),甚至重新生成会话id(如果“高”),这肯定会阻止共享 我看到的两个复杂点是“默认值”=>“蛋糕”和相应的“cookie\u路径”值,将此设置为“cake”会将服务器会话cookie放置在与该应用程序相关的目录中 您应该注释掉cookie_路径行,然后设置“defaults”=>“php”。这样您就知道,至少PHP会将会话cookie放在开发机器上的一个固定目录中 如果必须切换回“cake”,请确保“cookie\u path”参数实际上正在将服务器cookie文件写入单个共享目录中。在浏览器中访问两个应用程序时,请实际查看写入预期目录的文件。如果这两个应用正在将会话cookie写入不同的目录,那么您必须修复cookie_路径参数以匹配,因为这些应用显然没有共享。此外,根据您的CakePHP版本,您可能需要按照以下方式编写此参数,而不是按照您的方式编写此参数,以使其生效:“ini”=>array('session.cookie\u path'=>“/app/dir”)
最后,再次检查站点域“cookie路径”和其他每个会话cookie参数是否完全相同。(您可以在Chrome web inspector中检查客户端蛋糕会话cookies。)如果有任何不匹配,则应用程序将无法共享。检查此链接。也许对你有帮助。这是有道理的,但我在我的第二个应用程序中使用cakephp方法进行访问会话,因为我必须在每个控制器和视图中进行所有更改,这看起来很耗时。绝对地,我也在做同样的事情,我的网站目前正在运行,但其他一些东西因此而中断,我正在调试东西,使用默认php路径将会话超时增加到8小时当前不起作用。