I recreated your scenario and what worked for me was putting these settings before the session_start():

ini_set("session.use_cookies", 0);
ini_set("session.use_only_cookies", 0);
ini_set("session.use_trans_sid", 1); // well you can leave this since you have it already in php.ini
ini_set("session.cache_limiter", "");

I hope this solves your problem. Of course you can edit your php.ini too instead of hardcoding this.

What I like to add is that using trans_sid can create a security hole if someone gets your session id. Do some IP check before and limit access to only the IP that created the session id. Keep in mind that using trans_id can also break your app if using an old link with old session id.