Zend Framework 2 Routing von Subdomains zu Modulen

8

Nach einer langen Suche ohne Erfolg. bevor ich aufhöre, möchte ich fragen:

Gibt es eine Möglichkeit, eine Subdomain zu einem Modul in Zend Framework 2 zu routen? wie:

Subdomain = & gt; Modul
api.site.com = & gt; api
dev.site.com = & gt; Entwickler admin.site.com = & gt; Administrator
site.com = & gt; Öffentlichkeitsarbeit ...

Ich habe es so versucht, aber ich kann keinen anderen Controller als den Standard (Index) erreichen.

%Vor%

Danke, dass Sie sich die Zeit genommen haben, mir zu helfen.

    
Sapher 25.10.2012, 14:27
quelle

2 Antworten

5

Zend Framework 2 hat keine Vorstellung vom Routing zu Modulen; Alle Routing-Zuordnungen liegen zwischen einem URI-Muster (für HTTP-Routen) und einer bestimmten Controller-Klasse. Das heißt, Zend\Mvc stellt einen Ereignis-Listener zur Verfügung ( Zend\Mvc\ModuleRouteListener ), mit dem Sie ein URI-Muster definieren können, das basierend auf einem bestimmten Muster auf mehrere Controller verweist und so "Modul-Routing" emuliert. Um eine solche Route zu definieren, fügen Sie diese als Routing-Konfiguration ein:

%Vor%

( Klicken Sie hier, um ein Beispiel für diese @ ZendSkeletonApplication zu sehen )

Dies ist jedoch nur die Hälfte der Gleichung. Sie müssen außerdem jede Controller-Klasse in Ihrem Modul unter Verwendung eines bestimmten Namensformats registrieren. Dies geschieht ebenfalls über die gleiche Konfigurationsdatei:

%Vor%

Der Array-Schlüssel ist der Aliasname, den ModuleRouteListener verwendet, um den richtigen Controller zu finden. Er muss das folgende Format haben:

%Vor%

Der diesem Array-Schlüssel zugewiesene Wert ist der vollständig qualifizierte Name der Controller-Klasse.

( Klicken Sie hier, um ein Beispiel für diese @ ZendSkeletonApplication zu sehen )

HINWEIS: Wenn Sie ZendSkeletonApplication nicht verwenden oder das Standard-Anwendungsmodul entfernt haben, müssen Sie den ModuleRouteListener in einem Ihrer eigenen Module registrieren. Klicken Sie hier, um ein Beispiel zu sehen, wie ZendSkeletonApplication diesen Listener registriert

    
Adam Lundrigan 25.10.2012, 15:14
quelle
4

Wenn ich Folie # 39 von verstehe DASPRIDS Rounter Presentation richtig, es ist so einfach wie - auf einer Pro-Modul Basis - um Ihre Subdomain Hosts zu definieren, zB:

%Vor%

Etc, Sie würden das für jedes Modul selbst machen.

    
Sam 25.10.2012 14:51
quelle

Tags und Links