跨域上传类

时间:2015-11-22 17:34:09

标签: php .htaccess upload cross-domain

我写完一个网站,目前正在托管服务上部署它。该网站由托管在同一服务器上的2个独立域组成。 (www.domain1.com& www.domain2.com)

场合

将这些域移动到托管服务时,我发现1个脚本不能像在本地服务器上那样工作。这个脚本是php中的自定义上传类。此脚本位于www.domain1.com,但需要将文件上传到www.domain2.com。

我的本​​地服务器是具有简单文件结构的Xampp服务器。

C:/ XAMPP / htdocs中

  • 域1 / uploadscript.php

  • 域2 / destinationfolder /

我目前正在使用$_SERVER['DOCUMENT_ROOT']功能导航到其他域。此方法适用于本地服务器,但不适用于托管版本,请参阅下文。

主要问题

本地服务器 print_r ($_SERVER['DOCUMENT_ROOT']);

  

= C:/ xampp / htdocs

在domain1.com上 print_r ($_SERVER['DOCUMENT_ROOT']);

  

= / home / myname / domains / domain1 / public_html /

在domain2.com上 print_r ($_SERVER['DOCUMENT_ROOT']);

  

= / home / myname / domains / domain2 / public_html /

$_SERVER['DOCUMENT_ROOT']并未指向" domains" 文件夹,但已指向" public_html"

问题

如何导航到服务器上的" domains" 文件夹? 跨域上传还有其他必要的东西吗?

1 个答案:

答案 0 :(得分:1)

如果要发送一些跨域数据,则应设置Access-Control-Allow-Origin标题。

您可以在.htaccess中执行此操作,如下所示:

Header set Access-Control-Allow-Origin "*"

请确保您在apache服务器中启用了 mod_headers

要自定义访问权限,您可以使用类似https://stackoverflow.com/a/10605009/5397119的内容。

另见https://stackoverflow.com/a/22331450/5397119