我一直在寻找这个问题的答案,尽管有数百个帖子,我找不到专门针对我的问题的答案......
我创建了一个网站,人们可以下载条形码包的zip文件。最初我在Web根目录中创建了一个带有customers / codes文件夹的站点。我用这个创建了zip文件:
$_SERVER['DOCUMENT_ROOT'].'/speedy/customers/codes/'
哪个输出'/var/www/html/speedy/customers/codes/'
完成网站后,我的客户决定他不希望除了登录用户以外的任何人都能访问他们的文件。因此,我认为最简单的主要系统更改方法是将客户端/代码文件夹移到Web根目录的外部。
所以我在/ var / www / customers / codes
中创建了文件如何链接到Web根目录之外的这些文件?我尝试了一些事情,没有任何效果。我试过这个......
'../../'.$_SERVER['DOCUMENT_ROOT'].'/customers/codes/';
...但它实际上回应了“../".
以下是生成zip文件的代码部分。我需要链接到/ var / www / customers / codes
system('/usr/bin/zip -j ' . $_SERVER['DOCUMENT_ROOT'].'/speedy/customers/codes/'.$order_id.'.zip ' . escapeshellarg($_SERVER['DOCUMENT_ROOT'].'/speedy/certificates/'.$order_id.'-certificate.pdf'));
答案 0 :(得分:2)
您可以像编辑文件系统一样编写路径。在你的情况下:
system('/usr/bin/zip -j ' . '/var/www/customers/codes/'.$order_id.'.zip ' . escapeshellarg($_SERVER['DOCUMENT_ROOT'].'/speedy/certificates/'.$order_id.'-certificate.pdf'));