我得到了:
发生了404错误
找不到网页。路由无法匹配请求的URL。
我的module.config.php
文件是:
'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'
),
),
),
),
),
请帮助,我是Zend Framework 2的新手!
答案 0 :(得分:3)
您应该在ZendSkeletonApplication中使用类似Application模块的配置:
'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(
),
),
),
),
),
),
),
您只需添加以下代码:
'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',
),
),
),
将此代码添加到'子路线'密钥,然后您将访问url:localhost /:controller_name /:action_name /:id(例如:http://zf.dev/test/index或http://zf.dev/test/add/1)。现在它的工作! 此代码可以修复zf2文档中的教程错误404。
答案 1 :(得分:2)
你有一个错字,试试这个:
'router' => array(
'routes' => array(
路由而不是路由器两次..
答案 2 :(得分:1)
实现修复,我错过了字母“d”,因此:Zend \ Loader \ StandarAutoloader我添加了“d”:Zend \ Loader \ StandardAutoloader。问候朋友。提示:Zend Studio 10和他的版本de ZF2在这一刻运行完美!
答案 3 :(得分:0)
请检查.htaccess文件和index.php文件。如果它们存在于公用文件夹中,则必须使用URL作为
http://localhost/public/Test/Test.
您的代码几乎是正确的。安德鲁引导你。让我知道你的回应。
答案 4 :(得分:0)
1.您还应该查看application.config.php
并将您的模块名称添加到RETURN数组中。
return array(
'modules' => array(
'Application',
'your_module',
.....
),
2.如果没有。检查module.config.php
答案 5 :(得分:0)
我建议还检查已缓存配置文件的数据文件夹,在开发安装中缓存的配置文件也可能导致此问题。 删除数据/缓存中的文件并尝试。
PS:如果您刚刚开始尝试在zend网站上使用博客模块,那么它适用于初学者,并且会针对新版本进行更新。
https://framework.zend.com/manual/2.4/en/in-depth-guide/first-module.html