我试图在php中为嵌入式shopify应用设置cookie。
setcookie("user", '[email protected]', time()+3600, "/", "example.com", 1);
它正常工作,但是如果我们使用2个shopify网站登录,并且如果两个站点都在同一浏览器中一起打开,则会更新cookie值,并为两个cookie设置相同的cookie,这会导致在两个位置显示相同的数据。
Cookie / Session基于域工作,并且是唯一的。
假设您的应用程序域是example.com,并且您将会话中登录的域另存为
$_SESSION['logged_in_store'] = 'store1.myshopify.com'
[当第二家商店登录到您的应用程序时,此变量将简单地更新,因为单个会话将在此域上运行。
作为解决方案,您可以使用wildcard subdomain
从DNS启用通配符子域。当商店登录到商店时,将它们重定向到唯一的子域.....就像商店1将在以下子域上运行
store1.your-app-domain.com
商店2将在]上运行>
store2.your-app-domain.com
等等..每个商店将在不同的通配符子域上运行。这将解决您的会话/ Cookie冲突。
希望这会有所帮助。