Subdomény a návrh aplikace

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

Ahoj,
vytvořil jsem e-shop a nyní jsem v situaci, kdy mám vytvořit ještě jeden obdobný, který bude využívat i část databáze s tím předešlým. A váhám jestli to udělat jako jednu velkou aplikaci anebo to řešit odděleně. Každý ten eshop by měl fungovat jak sám za sebe tak taky společně (společný košík, registrace).

Předpokládám, že na webu www.eshop.cz (zde bude rozcestník) vytvořím 2 subdomény např.
http://auta.eshop.cz (s aliasem www.auta.cz)
http://motorky.eshop.cz (a aliasem www.motorky.cz)

Potřebuji mít společné přihlašování na oba dva eshopy a také společný košík.

Poradil by mi někdo, jak se k tomu postavit a jak to celé navrhnout?

Předem díky moc za jakýkoliv podnět, zkušenost, upozornění, …

Bernard Williams
Člen | 207
+
0
-

Nazdárek,

já osobně bych šel cestou jedné aplikace pro oba e-shopy. Otázkou ale je, jak velké rozdíly v těch e-shopech budou. Pokud se budou lišit jen obsahem (auta a motorky) nebo i funkčností.

Pokud obsahem
Jedna aplikace → snadnější údržba, vývoj.. zkrátka všechno.

Pokud funkčností
Je otázka, jak moc velký rozdíl by ve funkčnosti byl. Pokud minimální, tak bych zůstal u jedné aplikace. Pokud by byl však větší, tak bych šel cestou 2 aplikací, protože jinak by sis neustále házel klacky po nohy, když bys to musel vše rozlišovat.

Co se týče DB

Kdyby byla rozdílná funkčnost, tak bys měl nejspíš i rozdílný návrh DB → tzn. 2 databáze popř. zdvojené patřičné tabulky.

Kdyby se to lišilo jen obsahem, tak by se do každé tabulky dal dát příznak, ke kterému sortimentu (e-shopu) daný produkt patří – tohle řešení se mi moc nelíbí. Spíš bych to viděl na 2 schémata v případě PostgreSQL, kde bys jen nadefinoval patřičné schéma a dál se už o to nestaral. V předchozí variantě bys to musel rozlišovat ve všech SQL dotazech.

Bernard

Editoval Bernard Williams (12. 11. 2010 11:20)

jtousek
Člen | 951
+
0
-

Pokud se eshopy moc neliší, není co řešit a použij jendu aplikaci.

Pokud se liší, šel bych cestou 1 aplikace s více nezávislými moduly – stále by mohly mít něco sdílené.

tom
Člen | 171
+
0
-

jtousek napsal(a):

Pokud se eshopy moc neliší, není co řešit a použij jendu aplikaci.

Pokud se liší, šel bych cestou 1 aplikace s více nezávislými moduly – stále by mohly mít něco sdílené.

Jestli to dobre chapu, tak by platilo, ze co subdomena to modul, je to tak?

jtousek
Člen | 951
+
0
-

Přesně tak.

EDIT: Umožnilo by to snadné prolinkování mezi e-shopy kupříkladu, sdílený košík by stále měl jít implementovat i když by to nebylo nic snadného.

Editoval jtousek (12. 11. 2010 11:48)

tom
Člen | 171
+
0
-

Bernard Williams napsal(a):

Nazdárek,

já osobně bych šel cestou jedné aplikace pro oba e-shopy. Otázkou ale je, jak velké rozdíly v těch e-shopech budou. Pokud se budou lišit jen obsahem (auta a motorky) nebo i funkčností.

Způsob výběru zboží bude v každém eshopu jiný, ale některé to zboží bude v obou a některé bude jen v jednom z nich. A společný by měli mít košík.

jtousek
Člen | 951
+
0
-

V tomhle případě je bohužel nutná nejen sdílená databáze ale bohužel i sdílené tabulky např. pro produkty. Docela tě lituju. Když si zákazník začne takhle vymejšlet, začínají problémy.

tom
Člen | 171
+
0
-

jtousek napsal(a):

V tomhle případě je bohužel nutná nejen sdílená databáze ale bohužel i sdílené tabulky např. pro produkty. Docela tě lituju. Když si zákazník začne takhle vymejšlet, začínají problémy.

Hmm, když jsem dokončil ten první eshop tak ho napadlo že chce k tomu ješte jeden, tak aby fungovaly spolu :)

jtousek
Člen | 951
+
0
-

Tím hůř… :)

EDIT: Ideální by bylo kdyby se lišil pouze vzhled = šablony a CSS. Pokud bys toho docílil, ušetřil by sis spoustu práce.

Editoval jtousek (12. 11. 2010 11:54)

tom
Člen | 171
+
0
-

jtousek napsal(a):

Přesně tak.

EDIT: Umožnilo by to snadné prolinkování mezi e-shopy kupříkladu, sdílený košík by stále měl jít implementovat i když by to nebylo nic snadného.

Ten košík zatím ukládám celý do session … předpokládám, že na těch subdoménách to poběží taky

tom
Člen | 171
+
0
-

jtousek napsal(a):

Tím hůř… :)

EDIT: Ideální by bylo kdyby se lišil pouze vzhled = šablony a CSS. Pokud bys toho docílil, ušetřil by sis spoustu práce.

A to nastaveni spravneho fungovani modul – subdomena se udela pomoci rout ze?

Bernard Williams
Člen | 207
+
0
-

Do subdoména = modul bych šel pouze v případě, že ty aplikace se od sebe budou hodně lišit.. jinak tam budeš mít (aspoň dle mé představy) hodně zbytečného kódu 2×.

jtousek
Člen | 951
+
0
-

Bernard Williams: Přesně tak, to jsem psal už na začátku

tom: Sdílenou session na subdoménách si nejsem úplně jistej, nikdy jsem to nepotřeboval takže nevím jestli to tak funguje. Byl bych ti vděčnej, kdybys mi sem pak napsal jestli to jde až to zjistíš.

Pomocí rout a správným nastavením serveru. Subdomény mohou být linkované každá do jiné složky, ty to potřebuješ linkovat vše do jedné. Nebo možná by v těch ostatních stačilo mít .htaccess a index.php, ale to bys musel zkusit.

Aurielle
Člen | 1281
+
0
-

Sdílená session by měla jít nastavit v rámci jedné domény bez problému, stačí pro nastavení domény použít .domena.cz

Editoval gmvasek (12. 11. 2010 15:37)

jtousek
Člen | 951
+
0
-

Myslíš php.ini session.cookie_domain? Je důležitá ta tečka na začátku?

Editoval jtousek (12. 11. 2010 15:48)

Aurielle
Člen | 1281
+
0
-

Ano, ta tečka na začátku označuje všechny subdomény.