Yii URL重写不起作用

时间:2013-04-23 23:11:36

标签: yii

我正在使用YiiBoilerPlate开发Yii应用程序。

我可以到达http://localhost/testapp/frontend/www/

当我点击登录时,它给我留言

在此服务器上找不到请求的URL / testapp / frontend / www / site / login /。

是否有任何配置缺失?

.htaccess:

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . index.php

frontend / config / main.php有:

        'urlManager' => array(
            'urlFormat' => 'path',
            'showScriptName' => false,
            'urlSuffix' => '/',
            'rules' => $params['url.rules']
        ),
apache访问日志中的

..具有:

*127.0.0.1 - - [23/Apr/2013:18:04:24 -0500] "GET /testapp/frontend/www/site/login/ HTTP/1.1" 404 516 "http://localhost/testapp/frontend/www/" "Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:20.0) Gecko/20100101 Firefox/20.0"*

在网上尝试了所有相关的建议但仍然无效。任何想法?

1 个答案:

答案 0 :(得分:0)

似乎loginRequire上有http://localhost/testapp/frontend/www/,它会将您重定向到不存在的loginUrl

您可以通过添加到config:

轻松解决此问题
// ......
'components'=>array(
   'user'=>array(
       'loginUrl'=>array('user/login'), # path to login controller/action
   ),
),

否则,如果您没有登录控制器,则会出现错误消息:

The requested URL /testapp/frontend/www/user/login/ was not found on this server.