即时通讯build立一个file upload网站运行多服务器支持。 当图像被上传时,它们被缩略图并存储在主要的前端服务器上,直到cron执行(每10分钟一次)并将它们移动到存储服务器上,因此在前10分钟,它们将驻留并被服务closures主要的前端服务器。
当一个file upload,用户被赋予了embedded代码…这是一个缩略图链接到完整的大小,这是一个HTML页面。 所以它可能是像http://www.domain.com/temp_content/filename.jpg链接到http://www.domain.com/file-ID
除了10分钟, http://www.domain.com/temp_content/filename.jpg不存在,它将是http://server1.domain.com/thumbs/filename.jpg
如果用户抓住原来的代码…拇指文件将被打破。
我可以移动文件到目的地,没有cron,但是这将需要时间,并将滞后的脚本,直到移动完成。 我也不想让用户运行这样的命令,我宁愿让服务器定期执行它们。
还有什么我可以做的?
我会始终抽象文件名。 它会为你节省很多麻烦。
然后,您可以发出第二个链接(server1.domain.com),因为这是大多数请求将去的地方,然后处理文件尚未使用mod_rewrite移动的边缘情况。 例如:
RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^/?(.*)$ http://www.domain.com/$1 [R=302]
这将302(暂时)将请求redirect到其他域不存在的文件。
或者,您可以从第二台服务器上的第一台服务器上进行存储。
您可以更改发送给用户的邮件以包含两个URL吗?
您也可以创build一个自定义错误页面,允许用户input所给的URL并自动翻译。