如何在没有浏览器的情况下运行SWF(在linux服务器上)?
我有一个swf文件,它连接到远程闪存服务器并接收一些数据。出于安全原因,我无法使此swf文件在web上可访问,因此无法使用浏览器运行它。有没有办法在服务器端通过命令提示符运行它(在linux下)?您可以使用.htaccess文件访问SWF web并保护目录 有关更多信息,请参阅 您还可以尝试使用ffplay(ffplay-fssomefile.swf)来运行swf 已编辑:ffplay似乎使用SDL,因此可能不需要X 但我认为这不会安装在你的服务器上。YMMV 更新:如果您使用SSH,请参阅本文,了解如何将X显示导出到本地工作站,不要让no-GUI阻止您的工作 AdobeAIR 主要问题是命令提示符,而不是“web可访问性”。如果您可以运行FireFox,我相信您可以通过文件系统路径加载该文件。如果有可能在命令行上运行SWF,我会非常惊讶。我的意思是,并不是说这在原则上是不可能的,只是SWF的重点通常是显示一些闪烁和跳跃的垃圾,所以没有人会费心编写命令行工具来运行它 顺便说一句,我想你知道你可以在Linux服务器上运行FireFox,对吧?(整个X Windows的东西?你可以很容易地(ish)编写一个C程序,实现netscape插件接口,直接与Flash接口。那就行了 然而,它可能仍然需要一个X服务器来完成这项工作——您可以使用XVnc或其他东西来运行headless 不平凡,但会奏效如何在没有浏览器的情况下运行SWF(在linux服务器上)?,linux,flash,Linux,Flash,我有一个swf文件,它连接到远程闪存服务器并接收一些数据。出于安全原因,我无法使此swf文件在web上可访问,因此无法使用浏览器运行它。有没有办法在服务器端通过命令提示符运行它(在linux下)?您可以使用.htaccess文件访问SWF web并保护目录 有关更多信息,请参阅 您还可以尝试使用ffplay(ffplay-fssomefile.swf)来运行swf 已编辑:ffplay似乎使用SDL,因此可能不需要X 但我认为这不会安装在你的服务器上。YMMV 更新:如果您使用SSH,请参阅本文
您的要求听起来有点奇怪-也许用其他语言重写Flash组件是一种更易于维护的设计。Adobe的Ichabod可能会解决您的问题,但我似乎找不到任何信息,无论它是供公众使用,还是只供搜索提供商使用。你可以使用
Xvfb
或Xfake
来运行一个与真实硬件没有接口的X服务器。如果它们不能作为包用于您的发行版,您可以从Xorg xserver源代码构建它们
(或使用MarkR的Xvnc
建议。)
Adobe插件通常附带一个名为flashplayer
或gflashplayer
的独立可执行文件,可在浏览器之外使用。我认为它仍然存在,但是在开发者包中,或者类似的东西中
如果您使用的是免费的Flash实现,那么Gnash和Swfdec分别提供了独立的Gnash
和Swfdec
可执行文件
这将在显示屏上启动Xvfb
:20(只需确保选择一个未使用的数字;正常显示屏从:0开始,ssh
的X转发通常分配:10
以上,我看到一些Xvnc
设置从:90开始),并在其内部运行gnash
:
startx /usr/bin/gnash http://url.to/flash.swf -- /usr/bin/Xvfb :20
如果您使用ubuntu,请键入sudo-apt-get-install-xvfb
,然后从adobe下载flashplayer,然后像这样尝试,它工作得很好:
xvfb-run ./flashplayer test.swf
或者,如果您使用windows,您只需双击服务器上的swf,它现在正在运行,与其他服务器通信,只需将此swf用作服务器的一部分,计算值并返回,swf永远运行循环,因为它是一个服务器最好的方法是通过Wine安装“Macromedia Flash Player MX”。。它将安装Macromedia MX以及“Macromedia Flash Player”。。现在只需转到您的swf文件并将其默认应用程序更改为“Macromedia Flash Player”(而不是Macromedia MX)我真的很想知道是否有人知道这样做的方法!我需要经常从服务器连接到它,浏览器永远不会是一个选项-服务器没有GUI,应该从cron运行。我将尝试ffplay,谢谢。我想使其不可访问以阻止下载该swf,因此保护http文件夹不是一个选项(用户需要访问该文件夹,因为他们需要该文件夹中的数据)。它是一个linux web服务器。没有GUI。