Php 有人可以获得Apache'中所有文件的列表吗;没有FTP的www文件夹?
我有一个2.5GB的文件,我想让用户在购买后下载。我最初计划隐藏文件,然后使用readfile以.zip头转储文件内容,但我的GoDaddy服务器显然不允许我在这么大的文件上使用readfile,所以我坚持每小时更改一次这个重要文件的名称。但是,如果有人可以列出我的www文件夹中的所有文件,那么人们就可以不花钱就拿走它Php 有人可以获得Apache'中所有文件的列表吗;没有FTP的www文件夹?,php,ftp,Php,Ftp,我有一个2.5GB的文件,我想让用户在购买后下载。我最初计划隐藏文件,然后使用readfile以.zip头转储文件内容,但我的GoDaddy服务器显然不允许我在这么大的文件上使用readfile,所以我坚持每小时更改一次这个重要文件的名称。但是,如果有人可以列出我的www文件夹中的所有文件,那么人们就可以不花钱就拿走它 有什么建议吗?只要您不允许对目录进行索引,他们就无法获得文件列表。为此,请在目录中创建.htaccess文件并添加: Options -Indexes 或者,如果文件夹有一个
有什么建议吗?只要您不允许对目录进行索引,他们就无法获得文件列表。为此,请在目录中创建.htaccess文件并添加:
Options -Indexes
或者,如果文件夹有一个索引页,这也将防止服务器公开目录列表,而是提供索引页 如果您的主机容量超过5千兆,请使用php
exec
命令以其他名称复制您的文件
假设您在一个不可用的文件夹中保存了一个名称不可用的文件
因此,每当买家确认订单时,您就将该文件复制到一个具有用户生成名称的已知文件夹中,然后将链接传递给用户
如果您的主机是linux,则使用cp
命令,如果是windows,则使用copy
使用类似于cp oldname.ext newname.ext
或copy oldname.ext newname.ext
一段时间后,您将删除已知文件夹中的文件如果此文件夹中有index.html文件,则他们不可能这样做。但是如果它只包含文件,那么你可以。索引不是解决方案,如果客户购买了一个产品并与其他人共享下载链接怎么办?那么下载地址将一直保持不变,其他人可以下载文件而不必购买它我还有什么选择?我的主机不允许我输出与文件大小一样大的文件。实际上,我有一个cronjob,它每小时更改一次重要文件的文件名。您是否看到主机允许您使用
exec
或system
或cmdshell
命令?我不确定。我应该如何准确地使用exec?您可以像exec('command',$arr)那样使用它代码>在命令部分编写“复制并重命名”命令,就像我在主答案中键入的一样检查以下链接: