我是Yii的新手并且很遗憾地说有人帮助我,为什么没有调用控制器employeController.php,我检查并设置了许多文件权限等,
这是我的网址http://dxb.softmatics.com:81/erp/index.php/employe/index
控制器:/ .............. for on board controller .... /
class employeController extends Controller{
/**
* Declares class-based actions.
*/
public function actions()
{
return array(
'page'=>array(
'class'=>'CViewAction',
),
);
}
/**
* for index page
*/
public function actionIndex()
{
echo 'in index';
exit;
}
}//...end of class
如果有任何其他问题,我会告诉你我的代码如config等
答案 0 :(得分:0)
您必须将控制器称为:
index.php?r=ControllerName/ActionName
在你的情况下:
dxb.softmatics.com:81/erp/index.php?r=employe/index
此外,您还可以添加模块,例如:
index.php?r=ModuleName/ControllerName/ActionName
参考:Controller
答案 1 :(得分:0)
此网址有效:dxb.softmatics.com:81/erp/index.php?r=employe/index
但是如果你在index
中没有看到你的回声 - 问题是:在布局中你应该设置默认控制器的名称 - 不是Site
,而是Employe
(你可以为每个布局设置正确的名称)
或将config.php
默认控制器设置为employe
(如果有)。
答案 2 :(得分:0)
问题是控制器名称及其文件的情况。它应该是EmployeController
和EmployeController.php
。 Yii将使路由中定义的控制器名称大写,并在controllers/EmployeController.php
寻找控制器。对于区分大小写的文件系统(如在Linux中),将找不到文件,因此Yii将假定控制器不存在并将返回404错误。
答案 3 :(得分:0)
我遇到了一个问题,即控制器/操作在本地(MAC OS X)上运行正常,而在我的服务器(Linux)上运行不正常。
问题是服务器上的 PHP opcache 需要刷新。
希望这可以帮助遇到类似问题的人!