Your webserver might have "suexec" enabled by default. Suexec is very particular about 644 and does not allows file with permissions 755 or 777 to work. You can read about suexec and its pros and cons here http://httpd.apache.org/docs/1.3/suexec.html