I am having two CakePHP application working on the same domain.
They are located at
"Wishlist" and "lighthouse" are each separate CakePHP applications.
The login page is at
localhost:8080/lighthouse, and I want the session generated by the lighthouse application to be used in the wishlist application.
The directory structure is
/htdocs /wishlist /app /config .... /lighthouse /app /config ....
I have edited the
core.php file for each application. I am using the same session cookie name and the same security sale but I am not able to get the session on the wishlist application.
How can I share a session in between my two applications?Answer1:
Firstly, install <a href="http://www.getfirefox.com" rel="nofollow noreferrer">Firefox</a>, <a href="http://getfirebug.com" rel="nofollow noreferrer">Firebug</a> and <a href="http://www.softwareishard.com/blog/firecookie/" rel="nofollow">Firecookie</a>. This will add a 'Cookies' tab to Firebug making it simple to inspect your cookies.
Cookies consist of multiple parts: name, value, domain, path, expires, etc. You are most interested in the 'path' part of the cookie here I believe.
By default CakePHP will restrict the path of each cookie to the subdirectory of your app. For example, when you visit
/wishlist, a cookie will be created but it will be restricted to the
/wishlist subdirectory. When you then go to
/lighthouse the previous cookie won't apply, so thinking that you have no cookie/session, a new one is created that is restricted to the
You need to change the path of created cookies to
/ so they persist across all subdirectories. This should be as easy as adding
ini_set('session.cookie_path', '/'); to both application's
You should look at developing each one as a plugin or developing them in the same app. I am not sure why you would want to develop two seperate apps when they are sharing a login screen.