1

我正在生产服务器上部署一个新的 yii 应用程序,该服务器最近已配置为托管该应用程序,并且所有 yii 要求都已成功安装(运行 yii/requirements)。问题是整个站点中的所有控制器/操作都没有工作,但站点/默认/索引。我通过服务器IP访问,所以当我这样写62.75.203.71时,会显示主页(站点(默认/索引),但是当我点击任何链接或编写另一个路由时,则找不到错误是生成,例如 62.75.203.71/site/show

该站点在我的开发电脑中正常运行,不知道这是我缺少的 yii 配置还是服务器问题。

这也是我的配置文件:

'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>',
        ),
    ),

这是我的 .htaccess 文件的内容

允许覆盖所有

我得到了 404-not found ngnix 1.14!

4

2 回答 2

0

我会寻找您的开发服务器和生产服务器之间的任何 http 配置差异。在两种环境中应用的 URL 重写规则之间可能存在差异。这将导致您的代码生成的 URL 无法正确解析。

于 2012-04-16T00:44:28.597 回答
0

错误可能是您的controller姓名以及您在 URLS 中调用它们的名称。它们区分大小写。

我遇到的第二个问题是您修改了对搜索引擎友好的网址,然后您可能需要在那里查看正则表达式

我确定你的controllers名字case导致了这个有线问题

例如, class BookingUsersController extends Controller 这是您的控制器,您应该对字符和 url 使用相同的大小写

yii::app()->createUrl('BookingUsers')

使用它是行不通的

yii::app()->createUrl('bookingusers')

反之亦然改变该控制器的情况,到处查看

于 2012-04-15T20:30:49.873 回答