Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将文件上载到服务器上的其他目录_Php - Fatal编程技术网

Php 将文件上载到服务器上的其他目录

Php 将文件上载到服务器上的其他目录,php,Php,我使用PHP允许用户在我的web应用程序上上传照片 我正在使用PHP函数: move_uploaded_file(); 我定义了上传路径: define('UPLOADPATH', 'images/'); 将照片放入我的图像/目录 现在,我想让用户能够从我网站的一个子域做同样的事情 我是否: define('UPLOADPATH', 'http:/mobile.website.com/images/'); 如果是这样,我如何防止其他人从他们的服务器将恶意文件上载到我的服务器?首先,move

我使用PHP允许用户在我的web应用程序上上传照片

我正在使用PHP函数:

move_uploaded_file();
我定义了上传路径:

define('UPLOADPATH', 'images/');
将照片放入我的图像/目录

现在,我想让用户能够从我网站的一个子域做同样的事情

我是否:

define('UPLOADPATH', 'http:/mobile.website.com/images/');

如果是这样,我如何防止其他人从他们的服务器将恶意文件上载到我的服务器?

首先,
move\u uploaded\u file()
的第二个参数应该是目录,而不是URL

我的意思是这是正确的:

define('UPLOADPATH', 'mobile/images/');
move_uploaded_file($tmp,UPLOADPATH.$name);
但这不是:

define('UPLOADPATH', 'http:/mobile.website.com/images/');
move_uploaded_file($tmp,UPLOADPATH.$name);

其次,为了防止其他人将恶意文件上载到您的服务器,您最好检查文件的扩展名。

我总是这样做,我不会在这里发布我的所有代码。那么
防止其他人将恶意文件上载到我的服务器是什么意思
我的意思是任何人都可以使用URL作为上载路径,要将他们在网站上上传的文件移动到我的服务器上的“我的图像/目录”中?或者move_uploaded_file()不接受URL?