Errore 404, Zend Framework 2 La URL richiesta non può essere uguagliata da routing

Sto diventando:

Un errore 404 si è verificato

Pagina non trovata. La URL richiesta non può essere uguagliata da routing.

Mio module.config.php file:

'router' => array(
    'router' => array(
        'Test' => array(
            'type' => 'Segment',
            'options' => array(
                //http://localhost/Test/Test
                'route' => '/Test[/[:action]]',
                'constraints' => array(
                'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
             ),
             'defaults' => array(
                 'controller' => 'Test\Controller\Test',
                 'action' => 'Test'
              ),
          ),
      ),
   ),
),

di aiuto, per favore, io sono nuovo in Zend Framework 2 !

OriginaleL’autore Juan Castro Lurita | 2013-02-19

6 Replies
  1. 3

    Si dovrebbe usare una configurazione come modulo di Applicazione in ZendSkeletonApplication:

    'router' => array(
        'routes' => array(
            'test' => array(
                'type'    => 'Literal',
                'options' => array(
                    'route'    => '/book',
                    'defaults' => array(
                        '__NAMESPACE__' => 'Test\Controller',
                        'controller'    => 'Test',
                        'action'        => 'index',
                    ),
                ),
                'may_terminate' => true,
                'child_routes' => array(
                    'default' => array(
                        'type'    => 'Segment',
                        'options' => array(
                            'route'    => '/[:controller[/:action]]',
                            'constraints' => array(
                                'controller' => '[a-zA-Z][a-zA-Z0-9_-]*',
                                'action'     => '[a-zA-Z][a-zA-Z0-9_-]*',
                            ),
                            'defaults' => array(
                            ),
                        ),
                    ),
                ),
            ),
        ),
    ),
    

    Semplicemente aggiungere il codice riportato di seguito:

    'test' => array(
                        'type'    => 'Segment',
                        'options' => array(
                            'route'    => '[/:action][/:id]',
                            'constraints' => array(
                                'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
                                'id'     => '[0-9]*',
                            ),
                            'defaults' => array(
                                '__NAMESPACE__' => 'Test\Controller',
                                'controller'    => 'Test',
                                'action'        => 'index',
                            ),
                        ),
                    ),
    

    aggiungere questo codice per ‘bambino-percorsi’ chiave e dopo che avrai accesso a url: localhost/:nome_programma di controllo/:action_name/:id (esempio : http://zf.dev/test/index o http://zf.dev/test/add/1). E ‘ ora di lavoro!
    Questo codice può correggere l’errore 404 per il tutorial in zf2 documentazione.

    OriginaleL’autore Hùng Thế Hiển

  2. 2

    Si dispone di un errore di battitura, provate questo:

    'router' => array(
        'routes' => array(
    

    Rotte piuttosto che router due volte..

    grazie, per la risposta amico, aggiungo itinerari e : Fatal error: Class ‘Test\Controller\TestController’ non trovato in D:\wamp\www\zf\web\vendor\zendframework\zendframework\library\Zend\ServiceManager\AbstractPluginManager.php on line 17
    Hai fatto un richiamabile per il controller?: ‘controller’ => array( ‘invokables’ => array( ‘Test’ => ‘di Prova\Controller\TestController’,
    È inoltre necessario assicurarsi che il controller in realtà esiste 🙂
    sì, ho: return array( ‘controller’ => array( ‘invokables’ => array( ‘Test\Controller\Test’ => ‘di Prova\Controller\TestController’ ), ),
    puoi postare qualche codice del controller? Hai lo spazio dei nomi corretti all’interno della classe controller?

    OriginaleL’autore Andrew

  3. 1

    Ottenere la correzione, mi mancava la lettera “d”, era così: Zend \ Loader \ StandarAutoloader ho aggiunto la “d”: Zend \ Loader \ StandardAutoloader. Saluti Amici. SUGGERIMENTO: Zend Studio 10 e la sua versione de ZF2 eseguire perfetto per questo momento !

    OriginaleL’autore Juan Castro Lurita

  4. 0

    Si prega di controllare il .il file htaccess e index.php i file. Se questi sono presenti nella cartella pubblica significa, è necessario utilizzare l’url come

     http://localhost/public/Test/Test.
    

    I codici sono quasi giusti. Andrew ha guidato bene. Fatemi sapere la vostra risposta.

    grazie per la risposta, ho nel mio .htacces : RewriteEngine On RewriteCond %{REQUEST_FILENAME} -s [O] RewriteCond %{REQUEST_FILENAME} -l [O] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ – [NC,L] RewriteCond %{REQUEST_URI}::$1 ^(/.+)(.+)::\2$ RewriteRule ^(.*)$ – [E=BASE:%1] RewriteRule ^(.*)$ %{ENV:BASE}index.php [NC,L]
    Avete incluso il nome del Modulo application.config.php file. ‘moduli’ => array( ‘Prova’),
    ciao, user2003356 ho nel mio application.config.php file <?php return array( ‘moduli’ => array( ‘Applicazione’, ‘Test’ ), ‘module_listener_options’ => array( ‘config_glob_paths’ => array( ‘config/autoload/{,*.}{global,local}.php’, ), ‘module_paths’ => array( ‘./module’, ‘./fornitore’, ), ), );
    Si prega di chiamare questo url. localhost/prova/test. Convertire i caratteri maiuscoli in minuscoli. E si prega di aggiornare, dove si trova il file htaccess.
    i test di questo localhost/Prova/Test e : impossibile Trovare L’URL richiesto /Test/Test non è stato trovato su questo server. , il mio .htacces file nella cartella pubblica del mio Zend Framework ,

    OriginaleL’autore user2003356

  5. 0

    1.Si dovrebbe controllare anche application.config.php
    e aggiungere il nome del modulo in RETURN array.

    return array(    
        'modules' => array(
            'Application',
            'your_module',
            .....    
     ),
    

    2.Se non ce l’ha.Controllare il percorso matrice in module.config.php

    OriginaleL’autore UWU_SANDUN

  6. 0

    Io suggerisco di controllare anche la cartella di dati che ha in cache i file di configurazione, file di configurazione memorizzati nella cache in dev installare anche possono causare questo problema.
    eliminare i file all’interno di data/cache e provare.

    PS: se si sta appena iniziando provare con il modulo blog su zend sito è per i principianti e più aggiornato con le nuove versioni.

    https://framework.zend.com/manual/2.4/en/in-depth-guide/first-module.html

    OriginaleL’autore Anupam Rekha

Lascia un commento