使文件仅可由JavaScript和/或Flash读取
我对web开发有点陌生,所以请原谅我这个略显初级的问题。有人能给我一些关于如何防止在使用JavaScript/Flash小部件显示内容时下载文件的一般性建议吗 基本的困境是使页面小部件可以播放文件,同时阻止直接下载源媒体。然而,由于JavaScript和Flash是浏览器端而不是服务器端,我不确定如何做到这一点 混淆源文件名是另一种选择,但我不确定这样做的好方法是什么。也许在.swf文件中用算法隐藏?不确定如何免疫反向编译。不过swf是使文件仅可由JavaScript和/或Flash读取,javascript,flash,filesystem-access,Javascript,Flash,Filesystem Access,我对web开发有点陌生,所以请原谅我这个略显初级的问题。有人能给我一些关于如何防止在使用JavaScript/Flash小部件显示内容时下载文件的一般性建议吗 基本的困境是使页面小部件可以播放文件,同时阻止直接下载源媒体。然而,由于JavaScript和Flash是浏览器端而不是服务器端,我不确定如何做到这一点 混淆源文件名是另一种选择,但我不确定这样做的好方法是什么。也许在.swf文件中用算法隐藏?不确定如何免疫反向编译。不过swf是 非常感谢。事实上,你不能。有两种类型的下载;正常(直接)和
非常感谢。事实上,你不能。有两种类型的下载;正常(直接)和通过流媒体传输的一个 我建议您使用直接密码,但同时传递授权密钥 此类URL的示例如下所示:
/download?file=134&auth=A34C56E4FCD3908DA
^ ^ ^
| | '- The predefined access token
| '- The requested file
'- Gateway script
不要忘记,您必须将敏感文件存储在文档根目录之外的某个位置
网关脚本如下所示(伪代码):
若您的目的是防止有人窃取您的源代码,那个么您什么也做不了,因为javascript需要通过浏览器下载。您可以将关键代码翻译成某种服务器端语言,并只将其输出传递给brwoser(或flash)。或者尝试一些服务器端javascript引擎谢谢您查看我的问题。我想网关下载脚本“fileserver”应该是php代码?有没有办法使PHP(或其他服务器端语言)显示为文件?有,可以是PHP,也可以是flash服务器。可以在服务器上执行的任何操作。我不知道你说的“显示为文件”是什么意思。如果你想伪装脚本,你可以使用Apache重写引擎,使用
.htaccess
文件。我正在查看PHP函数,看起来我需要的可能是fpassthru()。基本上,让fpassthru()充当文件服务的中介。啊,对了,这就是你需要的。您也可以使用readfile()
,但我听说fpassthru()
效果更好。此外,您还需要创建一个标题('Content-Type:')代码>以使此工作更好。替换为与您的文件类型关联的文件。非常感谢。我将使用时间敏感的加密令牌,并在页面加载时强制文件开始加载。
if( validate_token( get('auth') ){
file_id = get('file');
file_name = get_file_name( file_id );
data = file_read_all( file_name );
}