allankliu
(Allankliu)
1
我有一个Yii应用,在本地开发时我在protected/config/main.php中使能了UrlManager,如此,则:
http://localhost/main/index.php?r=<controller>/<others> 可以变成:
http://localhost/main/index.php/<controller>/<others>
按理,
http://<mydomain.com>/main/index.php/<controller>/<others> 应该没有问题。但是同样在生产环境中,使能UrlManager,却提示我:
No input file specified.而且不像调试出错,满屏出错信息的那种样子。就是这一句话。
是否有人遇到过此类事情?
我的服务器在godaddy.com上。
allankliu
(Allankliu)
3
没错,我的本地环境的确是WAMP。我看了看只有一个Controller.php是有两个大写字母的:OrderItemController.php
做了以下修改:
OrderItemController.php => OrderitemController.php。
连带着将所有和它相关的MVC和Test都做了修改。但是没有区别,不过你的意见倒是提醒我应该在Linux下开发。
但是好像还不是根本原因。我使用的依然是UrlManager路径方式的原始代码:
'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>',
),
),
penglu3000
(Beihuiguixian)
4
我也遇到过了类似的环境不同导致的差异。比如demo blog在本地contact里面的验证码每次刷新页面都一样但是能验证通过;但是传到网上每次刷新验证码变化,可是验证通不过。demo blog我可是一个字没改,也许是yii用到太多php特性导致兼容性问题。
我之前用的codeigniter就很正常,也许codeigniter简单吧?