0

所以我用 FTP 创建了几个目录和文件,因此所有者是我用来登录服务器的用户名。现在我想允许网站的用户将图像上传到这些目录。不幸的是,对于存储图像的网站,它应该归 Apache 所有。我怎样才能解决这个问题?我一直在阅读此内容,但无法直接找到答案。

我没有 SSH,所以我想所有命令行的东西都不适用于我。

编辑

然后我尝试使用 apache 再次创建文件夹,但现在我当然不能使用 ftp 将任何文件写入这些目录。

4

2 回答 2

1

假设至少一个目录可由 apache 用户写入(让我们将此目录称为“writeabledir”,它可能是您的根目录“/”),您必须删除您通过 ftp 创建的文件夹并创建一个 php 脚本来创建您需要的目录。例如,如果您想要一个名为的目录users,并在其中包含另一个名为的目录upload

在您的服务器上创建文件 makedirs.php。

<?php
  $oldumask = umask(0); 
  mkdir("writeabledir/users/upload",0777,true); // or even 01777 so you get the sticky bit set 
  umask($oldumask); 
?>

现在通过在浏览器上调用 your.serv.er/makedirs.php 运行一次 makedirs.php

编辑:

如果您不想删除并重新创建目录,您可以随时尝试从 ftp 更改文件权限。

以 FileZilla 为例,只需右键单击所需文件夹并将权限设置为 777。如果您的 ftp 用户没有权限执行此操作,那么除了要求管理员为您执行此操作外,别无他法。

编辑2:

添加 umask 以确保 apache 创建的文件夹对每个人都是可写的。(取自http://us3.php.net/manual/en/function.mkdir.php#1207

于 2013-11-02T14:30:19.153 回答
-1

朋友看起来我在php中工作,一些版本改变了解决方案,但最常见的是你已经想要存储它需要创建一个数据库并将其导入esu代码,该代码也适用于你想要的一些图像来地方,加上最明智的做法,您创建一个数据库,其中包含实现所需的字段,导入,放在您的日程安排的文件目录中,您还建议使用 aptana Studio 3 极大地促进了许多事物和低代码的创建xampp 它已经与 apache 集成在一个地方将帮助你很多关于安装的任何问题只要看看 youtube 他会描述

于 2013-11-02T14:27:27.117 回答