I had this problem couple of days back and it was due to filename being case sensitive on a linux/unix platform. My web site was working fine on windows but when I moved it to linux, the layout was not working anymore. One of my layout files was named as "3columnLayout.php" in the file system and in the controller I specified the layout as "3columnlayout". Note the difference in case between "3columnLayout" and "3columnlayout". Once I had set the layout property with correct case, the site worked as expected on linux. Are you sure, you are not doing something similar??