@Snapey gave this answer in another post
Did some experimentation into SESSION_DOMAIN
This might not help you but may help others coming to this post in the future.
If SESSION_DOMAIN is set to anything then it needs to match exactly the domain you are using, or the root domain if using a subdomain. Otherwise cookies are generated for session and csrf but then not returned to the server when submitting a form because they don't match the servers domain.
If SESSION_DOMAIN is omitted then the browser will always use the same domain.
If you don't have SESSION_DOMAIN in the .env file, check also that the config/session.php file has not been changed. It should be set to null in order to not impose a domain. e.g.;
'domain' => env('SESSION_DOMAIN', null),
So if it's set to null you should be good to go.
Also @Snapey if you read this, you said
Otherwise cookies are generated for session and csrf
Can you confirm that, because if I am using session I want session, not a cookie. That would be plumb weird.