不允许chmod()操作-FatFree框架


chmod() operation not permitted - FatFree framework

我一直在FatFree框架中开发一个应用程序,现在我正试图将其部署在服务器上。当我在本地主机上运行它时,一切似乎都很好。

然而,当我在服务器上部署它并试图访问它时,它会给我一个奇怪的错误,即

Internal Server Error
chmod(): Operation not permitted
#0 /var/www/webapp/inc/main.php:62 Template::serve('front_page.php')
#1 /var/www/index.php:65 F3::run()

我已经为webapp文件夹授予777权限,因此应该允许chmod()。以上情况表明,在为模板文件front_page.php提供服务时存在错误。

我该怎么解决这个问题?

为此,您必须使用-R递归地为您的"webapp"文件夹授予权限

Siddharth在评论中暗示了正确的答案:

F3在提供服务之前将模板编译到temp/dir。此临时目录需要a)存在,b)具有适当的权限。

要实现这一点,请转到模板文件所在的目录并运行:

mkdir temp/
chown www-data temp

检查中间目录权限这是一个常见的问题。

您可以将web服务器的写入权限添加到[fatfree web根目录]中。不安全!

chmod  o+w  fatfree-web-root-dir  # Then web-server can create "temp" folder.

另一种方式:您必须与web服务器所有者创建"临时"目录:

mkdir  fatfree-web-root-dir/temp
chown  www-data:www-data  fatfree-web-root-dir/temp
# www-data - in Debian for example