Hi all:
Today I discovered a troublesome problem with my application running under IIS7: when loadModel($id) in a controller doesn’t find a model (thus triggering the CHttpException 404 message) the application crashes with an Yii error that says
CHttpException
You are not authorized to perform this action...
followed by a stack trace that shows the controller filtering methods sequence.
It’s not a PHP error and it only happens under IIS7 because the exact same loadModel() code is used everywhere (under Linux at least) with no problems. I believe the same will happen with any thrown CHttpException so think it’s an IIS7 issue but I don’t know enough about it to fix it.
My question to IIS7 developers is, how do you configure it to handle CHttpExceptions thrown by Yii? Any help will be greatly appreciated.
[EDIT]
Upon further testing on other PC’s I had mixed results. The test code was a simple page with:
<?php throw new CHttpException('404','Error'); ?>
-
On WS2008 with Yii 1.1.13 I got a PHP error about not being able to open a file or stream because of permissions; after I upgraded to Yii 1.1.4 the problem went away.
-
My development PC at work (where the problem resides) is Win7 using the local IIS7 server. On a different Win7 PC with Yii 1.1.13 and 1.1.4 everything worked fine.
I already mentioned the loadModel($id) action in the controller is the standard one created by Gii. Any ideas?
[/EDIT]
Thanks,