2016-09-16 2 views
0

Я следую приведенному ниже руководству по реализации [скелетного приложения] [1].Zend FrameWork 2 Album tutorial Ошибка: произошла ошибка 404 Страница не найдена

У меня есть копия вставили весь код содержится в учебнике, но я получаю ошибку ниже:

A 404 error occurred

Page not found.

The requested URL could not be matched by routing.

No Exception available

У меня есть крест проверил все подобные вопросы в StackOverflow, но ни один из них не смогли решить мою проблему.

Может ли кто-нибудь помочь мне в этом?

Пожалуйста, найдите ниже код .:

C:\wamp64\www\zend\module\Album\Module.php

<?php 

namespace Album; 

use Album\Model\AlbumTable; 

class Module 
{ 
    public function getAutoloaderConfig() 
    { 
     return array(
      'Zend\Loader\ClassMapAutoloader' => array(
       __DIR__ . '/autoload_classmap.php', 
      ), 
      'Zend\Loader\StandardAutoloader' => array(
       'namespaces' => array(
        __NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__, 
       ), 
      ), 
     ); 
    } 

    public function getServiceConfig() 
    { 
     return array(
      'factories' => array(
       'Album\Model\AlbumTable' => function($sm) { 
        $dbAdapter = $sm->get('Zend\Db\Adapter\Adapter'); 
        $table = new AlbumTable($dbAdapter); 
        return $table; 
       }, 
      ), 
     ); 
    }  

    public function getConfig() 
    { 
     return include __DIR__ . '/config/module.config.php'; 
    } 
} 

C: \ wamp64 \ WWW \ Зенд \ модуль \ Album \ Config \ module.config.php

<?php 
return array(
    'controllers' => array(
     'invokables' => array(
      'Album\Controller\Album' => 'Album\Controller\AlbumController', 
     ), 
    ), 

    'router' => array(
     'routes' => array(
      'album' => array(
       'type' => 'segment', 
       'options' => array(
        'route' => '/album[/:action][/:id]', 
        'constraints' => array(
         'action' => '[a-zA-Z][a-zA-Z0-9_-]*', 
         'id'  => '[0-9]+', 
        ), 
        'defaults' => array(
         'controller' => 'Album\Controller\Album', 
         'action'  => 'index', 
        ), 
       ), 
      ), 
     ), 
    ), 

    'view_manager' => array(
     'template_path_stack' => array(
      'album' => __DIR__ . '/../view', 
     ), 
    ), 
); 

Есть ли способ в zend сделать отладочную ошибку, когда возникает проблема?

.htaccess файл содержит код, приведенный ниже

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^.*$ - [NC,L] 
RewriteRule ^.*$ index.php [NC,L] 

ВХост как ниже

<VirtualHost *:80> 
    ServerName zend 
    DocumentRoot c:/wamp64/www/zend/public 
    <Directory "c:/wamp64/www/zend/public/"> 
     Options +Indexes +FollowSymLinks +MultiViews 
     AllowOverride All 
     Require local 
    </Directory> 
</VirtualHost> 

хозяина установлены как

127.0.0.1  zend 

Я пытаюсь получить доступ к ссылке ниже

http://zend/album

C: \ wamp64 \ WWW \ Зенд \ Config \ modules.config.php

return [ 
    'Zend\Router', 
    'Zend\Validator', 
    'Application', 
    'Album', 
]; 
+0

просто необходимости подтвердить, но ваш с помощью веб-сервера Apache не так ли? вы сделали то, что он сказал в самом низу, где он говорит * «если вы видите стандартную ошибку Apache 404, тогда вам нужно исправить использование .htaccess перед продолжением». * –

+3

какой URL-адрес вы вводили? Какой у вас vhost (wamp vhost) – Hooli

+0

Привет Memor-X и Hooli Спасибо за ответ. Я добавил .htaccess и vhost и информацию о хосте на вопрос. Можете ли вы посмотреть, хорошо ли это или нет? – user3392695

ответ

1

Это из-за тайника.

Просто отключена ниже в C: \ wamp64 \ WWW \ Зенд \ Config \ application.config.php

'config_cache_enabled' => false, 
'module_map_cache_enabled' => false 
+0

Человек, я потерял 2 дня за этот глупый '404'. Большое спасибо – Ivan

Смежные вопросы