Jak odkazovat ze subdomény na doménu

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
finwe
Člen | 58
+
0
-

Hledal jsem hledal, téma propírané asi 100×, ale nikde nenašel řešení přesně na tohle.

Mám routu, která obsluhuje jednu akci jednoho presenteru na několika subdoménách. Všechno ostatní jede na hlavní doméně. Jenže aplikace si vesele funguje i na té subdoméně, takže mi tím vzniká duplicitní obsah.

Řešení, co mě napadla:

  • odsunout tu jednu akci do jiného modulu (to nedává smysl, duplikoval by se mi kód a nevím, jestli by to fungovalo)
  • nadefinovat ostatní routy vč. domény, ale to je fuj a ztěžovalo by to vývoj na lokální doméně. Taky to generuje všude absolutní URL, což se mi uplně moc nelíbí.
  • samotné definování odkazů s // jen prependuje aktuální doménu. Kde by taky tu plnou vzalo, žejo.
  • ONE_WAY routu nepotřebuju, ta přesměrovává

Nenapadá vás prosím, co by mi mohlo jednoduše a elegantně pomoct vygenerovat těch pár odkazů v layoutu absolutně, ideálně jen pokud jsem na subdoméně?

Michalek
Člen | 211
+
0
-

Já to řeším {plink :Homepage:Frontend:Default:, subdomain => www} :-)

finwe
Člen | 58
+
0
-

Tak to ovšem znamená mít poddoménu jako parametr? takže bych musel do Routy stejně narvat základ domény a URL by mi to stejně generovalo absolutní…?

Nebo lze napsat routu tak, aby ne?

Aurielle
Člen | 1281
+
0
-

URL by ti to generovalo absolutní. Udělal bych parametr subdomain, popř. domain, nastavil ho jako persistentní a hodnotu měnil, když by to bylo potřeba. Navíc Nette ti kanonizací odkazů ušetří problémy s duplicitním obsahem.

finwe
Člen | 58
+
0
-

Já jsem to mezitím vyřešil // ve všech routách, za který vložim string domény z konfigu (lokální virtuály pro development, ostrá doména pro production). Není to nejhezčí (kdybych měl mít to subdoménování složitější, určitě bych narazil), ale funguje to.