0

我有一些 Web 服务 + 一些我想用 cron 执行的 shell 脚本。问题出在 tmp 目录上。

  1. 为了使 web 服务工作,我必须运行命令sudo chown -R www-data:www-data app/tmp(www-data 是 apache 使用的组和用户)
  2. 问题是,当我与某个用户一起执行 CakeShell 时,我收到很多错误,告诉 app/tmp 目录中的某些文件不可写 - 这是因为 tmp 目录归 www-data ...
  3. 我可以使用 root 用户运行这些脚本 - 然后我不会收到任何错误...
  4. 当我以 root 用户运行脚本时,这些脚本不时修改 app/tmp 中的一些文件,然后我在 web 服务(网站)上遇到许多错误,即 app/tmp 中的某些文件不可写。似乎运行脚本有时会修改具有执行这些脚本的用户权限的 tmp 文件。
  5. 我想从 cron 执行这些脚本。

我的问题是:

  1. 什么是 app/tmp 目录(权限、用户、组等)的正确设置以及如何设置它以使 web 服务和从 shell 执行脚本工作?
  2. 是否可以设置 app/tmp 目录的权限以允许所有用户和组对其进行读写?这是个好主意吗?
4

1 回答 1

2

如果您不使用共享网络服务器,则可以使用许可所有权:

chmod -R 777 app/tmp

如果您拥有服务器/VPS,这不是安全漏洞,因为更明智的用户(www-data)已经拥有访问权限。

或者

您可以使用以下命令运行 crontab “in name of”www-data用户su

于 2012-10-25T20:58:33.453 回答