我有许多不同的域,我希望用户能够选择一张照片,但是我想上传/存储在一个中央分离域上的照片。
有没有更明智的方法来做到这一点?
我考虑过使用来自其他域的 iframe(因此它们正在与所需的域交互),但还没有尝试过。
我也读过 curl 可以做到这一点。
任何其他想法/问题/疑虑...
所有建议表示赞赏。
谢谢
有几种方法可以处理这个问题。以下是我看到的场景。
场景 A:所有域都在同一台服务器上。使用此设置,您实际上可以通过将图像和其他文件存储在 Apache 无法访问的目录中来帮助您的服务器安全。然后,您使用 PHP 通过虚拟链接将文件提供给最终用户。Drupal 使用它的私有文件系统来做到这一点。
如果用户能够从其他域上传图像,则只需让所有域将图像写入同一目录,然后始终返回“中心”域的 URL 以检索它们。
场景 B:域存在于两台或多台服务器上。通过此设置,您真正需要做的是设置一个 API,让其他域在后台进行通信以将照片发送到核心存储库域。该域保存它并返回一个 URL 用于访问它。
无论哪种情况,您都应该真正查找 CDN 技术。它基本上是你想要完成的事情,还有更多。我还建议在任何一种情况下,您始终对所有图像使用中央域上的路径,而不是通过当前域将它们返回。
没有理由让 iframe 或 curl 参与其中。假设所有这些域都在同一个服务器(或同一个服务器集群)上,没有什么要求使用一个域上的文件上传的文件只能从该域提供。上传表单可以对上传的文件执行任何操作,包括将其存储在可从您的中心域访问的位置。