PHP文件处理和第三级域
我有一个类似software.domain.com的子域,它通过cPanel重定向重定向到domain.com/software/。 我正在创建一个上传系统,将所有文件发送到一个兄弟文件夹中,比如domain.com/files/,通过一些技巧上传没有问题,但是当需要删除该文件时,特定脚本无法找到它 将$\u POST变量send返回到脚本,路径是正确的,如/files/path/to/file,它引用了public\u html根目录! 脚本是使用ajax调用调用的,可能是这样吗?也许是路径翻译PHP文件处理和第三级域,php,file,subdomain,unlink,Php,File,Subdomain,Unlink,我有一个类似software.domain.com的子域,它通过cPanel重定向重定向到domain.com/software/。 我正在创建一个上传系统,将所有文件发送到一个兄弟文件夹中,比如domain.com/files/,通过一些技巧上传没有问题,但是当需要删除该文件时,特定脚本无法找到它 将$\u POST变量send返回到脚本,路径是正确的,如/files/path/to/file,它引用了public\u html根目录! 脚本是使用ajax调用调用的,可能是这样吗?也许是路径翻
非常感谢 如果您说您的AJAX无法从子域或其他任何地方找到它,那么您需要使用完整的域路径,而不使用子域
var url = "http://domain.com/files/path/to/file";
如果你说你的PHP找不到它,你可以做一些类似的事情来改变绝对路径。从子域根目录中的文件
$url = realpath(dirname(dirname(__FILE__)))."/files/path/to/file.php";
请添加您尝试过的示例代码。我建议将所有路径处理代码存储在公共代码存储库中,并将其用于存储和删除。这使得调试更加容易。此外,您可以更有效地为子域合并不同的路径处理。。。该脚本不在根目录中,因此我使用了
$url=realpath(dirname(dirname(\uuuu FILE\uuuu)))。“/../files/path/to/FILE.php”那是行不通的。回显url以查看其外观。。这将不会创建有效的文件路径。每次调用dirname()
时,它都会将其向上移动到一个文件夹中,因此不需要“./”部分。如果需要向上移动一个级别,只需添加另一个dirname()调用realpath(dirname(dirname(dirname(\uuu FILE\uuu)))
尝试过它,FILE\u存在,unlink返回true,但文件仍然存在。。。也许我会回到基本设置,在软件文件夹中设置媒体文件夹。非常感谢。unlink返回true,文件仍然存在?那没有道理。取消链接将删除一个文件。发生了一些奇怪的事情。正是我的想法,顺便说一句,把文件夹移到里面不会有问题,而且效果很好!就这样吧!