【问题标题】:Overwriting file failed due to permissions on Laravel project由于 Laravel 项目的权限,覆盖文件失败
【发布时间】:2016-02-16 14:44:03
【问题描述】:

在现有的 Laravel 项目中,我正在尝试将修复上传到网络服务器。我没有使用 Laravel 的经验。我要覆盖的文件位于/app/libraries/

FTP 服务器有test.domain.comhttpdocs 的实时版本。我可以在测试环境中上传修复程序,但在实时环境中,我在 FileZilla 中获得了拒绝权限。我什至尝试在 Plesk 上使用文件管理器,但即便如此我还是得到了Permission denied。 FTP 用户和 Plesk 用户都拥有所有可能的权限。

我有权在/app/ 中写入,但不能在/app/ 的任何子目录中写入。

Laravel 是否阻止覆盖这些文件?为什么它在同一网络服务器上的测试版本上工作?有没有其他方法可以覆盖该文件夹中的文件?

【问题讨论】:

  • 那么 /app/libraries 和这个文件夹中的文件的权限是什么?
  • @OlegNeumyvakin;文件夹是 chmodded 755,文件是 644。尝试更改时,我得到 Operation not permitted
  • 755644 分别表示只有这些目录/文件的所有者才有写权限。如果您通过 FPT 连接的用户不是这些文件的所有者,那么您无法更改它们。检查子文件夹的权限/所有者,例如app/libraries,并查看它们是否与您的用户和所需的权限相匹配。有没有其他人可能使用不同的用户名上传文件?
  • @vonUbisch 您的问题与 Laravel 无关。这实际上是一个FTP 权限 问题,您应该在服务器管理员的帮助下解决。如果您是服务器的唯一负责人,那么您是否有任何其他访问权限,例如 CPanel 或服务器配置?能否提供文件权限截图?
  • 即使 FTP 用户拥有所有权限,如果 PHP 执行器(webserver 或 php-fpm 实例)不是同一个用户并且执行器没有任何权限(不同组等)做你还有问题的东西。所以我的猜测是,执行你的脚本(webserver 或 php-fpm 实例)的用户也不允许执行它。

标签: php laravel ftp permissions plesk


【解决方案1】:

正如Trip所说,它与Laravel无关,Bogdan的回复绝对是正确的。

我建议您与服务器管理员联系,以将您的用户与对该文件夹的正确权限相关联。如果您是服务器的所有者,请阅读一些教程。

附:这可能会有所帮助: http://www.whoishostingthis.com/blog/2011/05/25/understanding-file-permissions-ftp-chmod/

【讨论】:

  • 所有者(非技术人员)在 Plesk 中弄乱了他的 VPS 帐户,在联系了托管支持后,他们做了一些魔术,一切都恢复了正常。非常感谢。
【解决方案2】:

/app/libraries 不是作为基本 Laravel 安装一部分的文件夹(至少不是 L4 或 L5),所以我想说这个权限与 Laravel 本身无关。

博格丹的评论是正确的。库子文件夹很可能归您所连接的用户以外的用户所有。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-21
    • 1970-01-01
    • 1970-01-01
    • 2010-10-17
    • 2016-12-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多