2016-12-01 24 views
6

Farklı kullanıcı açılış sayfalarına sahip bir Angular 2 uygulaması oluşturmak istiyorum. Örneğin, 'user1.example-domain.com' ve 'user2.example-domain.com' farklı ve alakasız 'ana sayfa' olacaktır.angular2'de alt alan kullanarak nasıl yönlendirilir?

Sorularım:

  1. Ben Açısal 2 kullanarak yapabileceğini nasıl?
  2. Yerel makinemde nasıl test edebilirim? "user1.localhost: port" yeterli mi? Öyle gibi statik yönlendirme kullanarak denedim

:

ben o yapılabileceğini biliyoruz bardak içinde yapılır gördüm
{path: 'test.localhost:4200/generic-link1', component: GenericLink1Component} 

.

+1

[Html5 History Api - pushState öğesini bir etki alanından bir alt etki alanına] olası kopyası (http://stackoverflow.com/questions/14807921/html5-history-api-pushstate-from-a-domain-to-a- alt alan) – estus

+0

Açısal uygulama SPA'dır ve Açısal yönlendirici, yollara göre URL'leri değiştirmek için pushState kullanır. Gördüğün her neyse, bundan farklı bir şey gördün. – estus

+0

sadece açıklığa kavuşturmak için, bunu açısal 2'de görmedim (tumblr'ın geliştirme metodolojisi hakkında bir fikir). Konseptin var olduğunu biliyorum: http://skittenthekitten.tumblr.com/ belirli bir kullanıcı için "user.tumblr.com" alt alanın kullanımını görebiliyorsunuz (her kim olursa olsun skittenthekitten terfi etmiyorum :)) – Hahn

cevap

3

Bu kolayca yapılabilir, ancak Angular (veya bu konuyla ilgili başka herhangi bir JavaScript yönlendirici) ile yapılmamalıdır. Alt etki alanına yönlendirme, sunucunun yardımcı olmasını gerektirir. Alt etki alanları olarak user1 ve user2'u kurmanız ve ardından varsayılan belgenizde, kurallarınız ne olursa olsun yola yönlendirmeniz gerekir.

Size Açısal uygulama her iki adreste de bulunur, böylece http://user1.example.com/index.html adresinde bir tane ve http://user2.example.com adresinde bir tane daha olacaktır. Aynı uygulama da olabilir.

Tamamen açısal bir çözüm için, planınızı http://example.com/user1 kullanmak üzere değiştirmeniz gerekir.

İkinci URL şemasının sizin için daha iyi olabileceğinin bir nedeni daha var. Kendinizi barındırıyorsanız, kalbinizin içeriğine alt alanlar oluşturabilirsiniz. Bununla birlikte, paylaşılan barındırma kullanıyorsanız, kullanabileceğiniz alt alan adlarıyla sınırlı olacağınız oldukça yüksek bir olasılık söz konusudur. Bu, ikiye kadar az olabilir.