turk porno porno escort rokettube
Ergebnis 1 bis 4 von 4

Thema: Sporadische Routing-Probleme?? Hilfe erwünscht

  1. #1
    Neuer Benutzer
    Registriert seit
    09.04.2015
    Beiträge
    3
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard Sporadische Routing-Probleme?? Hilfe erwünscht

    Hallo ZFF Community,

    ich stehe zur Zeit vor einem etwas eigenartigen Problem... Muss dazu sagen, dass ich erst seit einigen Wochen programmiere.
    Und zwar dreht es sich um Folgendes:
    Meine Standard-Route wird teilweise nicht korrekt interpretiert.

    Hier mal ein Auszug aus meiner module.config.php:
    PHP-Code:
        'router' => array(
            
    'routes' => array(
                
    'index' => array(
                    
    'type' => 'Literal',
                    
    'options' => array(
                        
    'route'    => '/',
                        
    'defaults' => array(
                            
    'controller' => 'Main\Controller\Index',
                            
    'action'     => 'index',
                        ),
                    ),
                ), 
    Der Controller ist in der selben config auch als invokable registriert (bringt keine Abhängigkeiten mit).

    Das eigenartige an der Sache ist nun, dass ich beim ersten Seitenaufruf meistens(!) den korrekten Inhalt angezeigt bekomme, das Routing also funktioniert, der richtige Controller mit richtiger Action aufgerufen wird und ich das entsprechende View-Template zu sehen bekomme. (Controller liefert aktuell nur ein ViewModel(array()); zurück, Fehler auf Controllerseite können daher fast ausgeschlossen werden... Das View-Template enthält nur das Wort "Test", sollte also auch keine Fehler verursachen können)

    Sollte der Seitenaufruf nun funktioniert haben, aktualisiere ich die Seite per F5 und bekomme nun mehr eine Fehlerseite präsentiert. Praktisch wird meine Layout.phtml gerendert, allerdings komplett ohne CSS (blanko HTML, sehr ansprechend...) die Meldung
    A 404 error occurred


    Page not found.

    The requested URL could not be matched by routing.

    No Exception available

    wird mir präsentiert. Dabei hat das Routing doch 3 Sekunden vorher noch wunderbar funktioniert?

    Zur Umgebung auf der gearbeitet wird: Microsoft IIS 8 und PHP 5.4.

    Anmerkung: Bei der fehlerhaft dargestellten Seite zeigen die Links der Navigation (teil der Layout.phtml) auch nicht mehr auf die korrekte BaseURL, sondern eine Instanz zu "hoch", was zu 403 Forbidden führt. Irgendwie passt der Kontext da nicht mehr ganz.

    Auf jeden Fall wäre ich dankbar für jede Art von Fix/Workaround/Hilfestellung, da ich mir dieses Phänomen nicht erklären kann :X


    MfG
    SMEE

  2. #2
    Erfahrener Benutzer
    Registriert seit
    18.08.2010
    Beiträge
    110
    Thanks
    7
    Thanked 1 Time in 1 Post

    Standard

    Ganz unbekannt ist mir das Verhalten nicht, dass beim erneuten Aufruf die Route plötzlich falsch reagiert.

    In der Regel lag das immer an einer relativen Pfadangabe. Heißt: Beim ersten Mal war der Pfad "/" korrekt, beim zweiten mal entstand darauß aber ein "//" in der URL, weil die relative Angabe vom ist-Punkt einfach eins draufsetzt.

    Da Routing immer ein Raster der tatsächlichen URL ist -> sieht die URL denn so aus wie sie soll, oder gibt es da Merkwürdigkeiten beim erneuten Aufruf?

  3. #3
    Super-Moderator Avatar von Kaiuwe
    Registriert seit
    30.12.2006
    Beiträge
    5.520
    Thanks
    4
    Thanked 356 Times in 287 Posts

    Standard

    Willkommen im Forum!
    Zitat Zitat von SMEEagol Beitrag anzeigen
    Bei der fehlerhaft dargestellten Seite zeigen die Links der Navigation (teil der Layout.phtml) auch nicht mehr auf die korrekte BaseURL, sondern eine Instanz zu "hoch", was zu 403 Forbidden führt.
    Hier liegt das Problem. Zeige doch mal deine URLs hier auf.
    Zum Zend Framework stehen jedem folgende Quellen zum Nachschlagen zur Verfügung:

  4. #4
    Neuer Benutzer
    Registriert seit
    09.04.2015
    Beiträge
    3
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard

    Danke! Hatte Urlaub, deshalb kommt die Resonanz etwas spät

    EDIT: Ein zusätzlicher Hinweis: Beim ersten Aufruf scheint es prinzipiell zu funktionieren. Gebe ich die selbe URL nun erneut ein oder Refreshe, so entsteht der beschriebene Fehler. Vielleicht irgendeine Art von Cache-Problem? Warte ich eine kurze Zeit (ein paar Minuten) und rufe die Seite erneut auf, funktioniert der Routen-Aufruf wieder dieses eine Mal... ES TREIBT MICH IN DEN WAHNSINN

    Beim refreshen meiner Index-Seite (das Problem tritt interessanterweise auch ausschließlich hier auf, die anderen Routen bleiben von dem Problem verschont) verändert sich die aufgerufene URL nicht.
    Abgesehen davon, dass bei nicht gesetztem Slash am Ende der Route dieses Slash nachträglich noch hinzugefügt wird:
    Code:
    foo.beispielroute -> foo.beispielroute/
    Bei weiteren Aktualisierungen der Seite verharrt die URL aber in ihrem aktuellen Zustand.
    Aufgerufen werden hierbei meine layout.phtml - die bei den anderen Routen allerdings auch keine Probleme bereitet - und die Index.phtml, welche einfach nur
    PHP-Code:
    <?php
    enthält, also blanko ist.
    Innerhalb der layout.phtml verweise ich mit dem $this->basePath() und gegebenfalls konkateniertem String für die Route auf die Ressource. bspw.
    PHP-Code:
    echo $this->basePath() . "/case-details" 
    Bei dem ersten, funktionierenden Aufruf zeigen die dargestellten Links auf server/projekt/beispielroute. Bei der "kaputten" Seite (nach Refresh/neuem Aufruf) zeigen sie nur noch auf server/beispielroute, was einen Server Error produziert... Dreht sich hier wie gesagt um einen IIS8, auf dem mehrere Seiten gehostet werden. Habe hier allerdings die Route projekt auf das public-Verzeichnis meiner ZF2 Anwendung zeigen lassen.

    In der <div class="content"> wird dann <?= $this->layout()->content; ?> ausgegeben. Soweit eigentlich alles Best Practice aus der ZF2 Skeleton App, zumindest soweit ich das beurteilen kann.
    PHP-Code:
    'router' => array(
            
    'routes' => array(
                
    'index' => array(
                    
    'type' => 'Literal',
                    
    'options' => array(
                        
    'route'    => '/',
                        
    'defaults' => array(
                            
    'controller' => 'Main\Controller\Index',
                            
    'action'     => 'index',
                        ),
                    ),
                ),
                
    'casedetails' => array(
                    
    'type' => 'Segment',
                    
    'options' => array(
                        
    'route' => '/case-details/:id',
                        
    'constraints' => array(
                            
    'id' => '[1-9][0-9]*'
                        
    ),
                        
    'defaults' => array(
                            
    'controller' => 'Main\Controller\CaseDetails',
                            
    'action' => 'index',
                        ),
                    ),
                ),
                
    'caseoverview' => array(
                    
    'type' => 'Literal',
                    
    'options' => array(
                        
    'route' => '/case-overview',
                        
    'defaults' => array(
                            
    'controller' => 'Main\Controller\CaseOverview',
                            
    'action' => 'case',                        
                        ),
                    ),
                ),
                
    'fileoverview' => array(
                    
    'type' => 'Literal',
                    
    'options' => array(
                        
    'route' => '/file-overview',
                        
    'defaults' => array(
                            
    'controller' => 'Main\Controller\FileOverview',
                            
    'action' => 'file',                        
                        ),
                    ),
                ),
                
    'filedetails' => array(
                    
    'type' => 'Segment',
                    
    'options' => array(
                        
    'route' => '/file-details[/:id]',
                        
    'constraints' => array(
                            
    'id' => '[1-9][0-9]*'
                        
    ),
                        
    'defaults' => array(
                            
    'controller' => 'Main\Controller\FileDetails',
                            
    'action' => 'detail',
                        ),
                    ),
                ),
                
    'createcase' => array(
                    
    'type' => 'Literal',
                    
    'options' => array(
                        
    'route' => '/create-case',
                        
    'defaults' => array(
                            
    'controller' => 'Main\Controller\CreateCase',
                            
    'action' => 'create',
                        ),
                    ),
                ), 
    Ich hoffe ich konnte ein paar weitere Anhaltspunkte liefern... Falls ich Details vergessen habe so seht es mir bitte nach, bin wie gesagt noch nicht so fit in Sachen Programmierung ... :<


    PS: Echt schwierig das hier zu posten, nach dem man nur eine gewisse Anzahl an URLs verlinken darf
    Geändert von SMEEagol (26.05.2015 um 12:23 Uhr) Grund: Additional Info

Ähnliche Themen

  1. Hilfe zum Routing
    Von eltuctuc im Forum ZF2 Grundlagen
    Antworten: 3
    Letzter Beitrag: 03.01.2013, 13:58
  2. Hilfe beim Routing
    Von ZFnewbie im Forum MVC
    Antworten: 7
    Letzter Beitrag: 23.11.2009, 14:03
  3. DIContainer - Feedback erwünscht
    Von G.Schuster im Forum Code-Laboratory
    Antworten: 11
    Letzter Beitrag: 12.11.2009, 04:34
  4. Zend_TagCloud -- Kommentare erwünscht
    Von DASPRiD im Forum Code-Laboratory
    Antworten: 20
    Letzter Beitrag: 09.04.2009, 12:25
  5. Antworten: 0
    Letzter Beitrag: 07.12.2008, 01:46

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •