Jedno přihlášení pro všechny subdomény
- hiny
- Člen | 35
Zdravím, nedaří se mi zprovoznit přihlášení uživatelů tak, aby se
zachovalo i na subdoménách.
Pokud do neonu přidám „cookiePath“ a „cookieDomain“ viz. níže. Tak
se nepřihlásím ani na hlavní doméně.
Jedná se o jednu aplikaci. Subdomény používám pro názvy kategorií.
Co dělám špatně? Děkuji za každou radu.
config.neon
common:
nette:
session:
expiration: 14 days
cookiePath: '/'
cookieDomain: '.localhost.dev'
Nette 2.0.10 | PHP 5.4.12
- Oli
- Člen | 1215
Ahoj, to co popisuješ neznám a ani jsem to nikdy nepoužil. Možná bych na to šel blbě, ale ty subdomeny bych si vytvořil v routeru (jestli to je v tvém případě možné):
$route = new Route('//<subdomain>.example.com/<presenter>/<action>', '...');
Pak by mělo fungovat přihlášení všude si myslím.
- hiny
- Člen | 35
Oli napsal(a):
Pak by mělo fungovat přihlášení všude si myslím.
Používám RouterFactory a router mám nastaven následovně:
public function createRouter()
{
$router = new RouteList();
if (function_exists('apache_get_modules') && in_array('mod_rewrite', apache_get_modules())) {
$router[] = new Route('index.php', 'Front:Default:default', Route::ONE_WAY);
$router[] = $adminRouter = new RouteList('Admin');
$adminRouter[] = new Route('admin/<presenter>/<action>', 'Admin:Default:default');
$router[] = $frontRouter = new RouteList('Front');
$frontRouter[] = new Route('//[<maincategory>.]localhost.dev/[<subcategory>/]', 'Default:default');
$frontRouter[] = new Route('//[<maincategory>.]localhost.dev/<presenter>/<action>[/<id>]', 'Default:default');
} else {
$router = new SimpleRouter('Front:Default:default');
}
return $router;
}
Na základě tohoto se přihlásím na primární doméně
localhost.dev a funguje to i jako přihlášení do Admin modulu.
Nicméně jakmile změním kategorii a tím i adresu v prohlížeči na např.
kategorie-1.localhost.dev, tak je ze mě zase
nepřihlášený uživatel.
Problém vidím někde v cookieDomain v neonu. Ale bohužel mi to nejde nastavit do potřebné podoby, jakmile to použiju, tak už se nepřihlásím vůbec.