Yii在每个请求上抛出URL CException

时间:2012-08-10 11:30:57

标签: php curl amazon-ec2 yii

我使用Yii框架在EC2上设置了Web应用程序。当我在EC2实例上传输文件时,我收到此错误

CException

The URL pattern "<controller:\w+>/<id:\d+>" for route "<controller>/view" is not a valid regular expression.

/var/www/html/framework/web/CUrlManager.php(700)

我在main.php中的URL规则是

'urlManager'=>array(
            'urlFormat'=>'path',
            'rules'=>array(
                '<controller:\w+>/<id:\d+>'=>'<controller>/view',
                '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
                '<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
            ),
        ),

我在controllers文件夹中有一个名为“ApiController.php”的控制器。在我的本地机器上它工作正常,但问题出在EC2实例上。

这些是main.php中的一些配置

'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',
    'name'=>'AppName',
    'defaultController'=>'Api',

1 个答案:

答案 0 :(得分:1)

要回答我自己的问题,因为.htaccess会删除错误

Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on

# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# otherwise forward it to index.php
RewriteRule . index.php