Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Erro na rota app

ERRO:

A 404 error occurred
Page not found.
The requested URL could not be matched by routing.

No Exception available

IndexController.php

<?php
namespace Estoque\Controller;
use Zend\Mvc\Controller\AbstractActionController;
use Zend\View\Model\ViewModel;

class IndexController extends AbstractActionController{

    public function IndexAction(){
        echo "Welcome to Zend";
        exit();
    }
}

module.config.php

<?php

return array(
    'router'=> array(
        'routes'=>array(
            'application'=>array(
                'type'=>'Literal',
                'options'=>array(
                    'route'=>'/app',
                    'defaults'=>array(
                        '__NAMESPACE__'=>'Estoque\Controller',
                        'controller'=>'Index',
                        'action'=>'index',
                    )
                )

            )
        )
    ),
    'controllers'=>array(
        'invokables'=>array(
            'Estoque\Controller\Index'=>'Estoque\Controller\IndexController'
        )
    )
);
1 resposta

Oi Yuri, tudo bom?

Você pode me informar qual versão do Zend você está utilizando? Assim fica mais fácil encontrar um direcionamento mais acertivo pro seu problema.

Além disso, se sua versão for a mesma do curso, tenta utilizar uma configuração de rotas mais semelhante a desse exercicio aqui:

https://cursos.alura.com.br/course/php-com-zend-framework-parte-1/task/11968

Algo como:

return array(
'router' => array (
        'routes' => array (
            'application' => 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 (
                        '__NAMESPACE__' => 'Produto\Controller',
                        'controller' => 'Index',
                        'action' => 'Index'
                    ),
                ),
            ),
        ),
    ));

Qualquer problema é só falar.

Abraço