我正在尝试使用perl脚本在浏览器中显示.docx文件,但这不起作用。
我的剧本
print "Content-type: application/docx\n\n";
my $file = 'perl.docx';
open(my $f, "$file");
binmode $f;
binmode STDOUT;
my $buffer;
while (read($f, $buffer, 1024, 0)) {
print $buffer;
}
实际上,这是从Google搜索中查看pdf文件摘录。
将程序运行到浏览器中时,下载了pl文件。如何在浏览器上显示?
答案 0 :(得分:0)
您尚未将服务器配置为运行Perl程序,因此它将以纯文本形式返回。
您需要查阅网络服务器的文档,了解如何执行该程序。
您似乎正在编写CGI(不要这样做,编写PSGI,然后使用CGI处理程序进行部署,如果您确实需要CGI),请将其用作手册中的搜索词。
这是a detailed tutorial on how to do it with Apache。
一旦处理完毕,浏览器可能仍会下载Word文档。如今,大多数浏览器都没有插件来在浏览器窗口中显示Word文档。没有办法解决在服务器上将文档转换为HTML的问题。
答案 1 :(得分:0)
正如您在某些评论中所建议的,您考虑过将.DOCX文件转换为PDF。如果您将文件转换为PDF,那么您应该能够通过几乎所有现代浏览器显示该文件的PDF版本。有关如何通过Perl显示PDF文件的说明,请参阅PDF not showing in browser when read through a perl script。
注意:为了透明,我为Zamzar(在线文件转换服务)工作。如果您需要转换器将您的DOCX文件转换为PDF,那么我们最近发布了一个开发人员API(https://developers.zamzar.com/)以编程方式转换文件,并支持您从DOCX转换为PDF,然后您可以插入脚本进行显示在浏览器中。