如何使用php强制下载文件(use php to force a file download)

因为大多数现代浏览器内联显示PDF和媒体文件,所以使用PHP编程语言(允许您更改正在编写的文件的HTTP头)强制浏览器下载而不是显示给定的文件类型。...

因为大多数现代浏览器内联显示PDF和媒体文件,所以使用PHP编程语言(允许您更改正在编写的文件的HTTP头)强制浏览器下载而不是显示给定的文件类型。

您需要在托管文件的web服务器上安装PHP、要下载的文件以及所讨论文件的MIME类型。

如何使用php强制下载文件

这个过程需要两个单独的步骤。首先,您将创建一个PHP文件来管理您希望保护的文件,然后在出现该文件的页面的HTML中添加对该PHP文件的引用。

将文件上载到服务器后,在文本编辑器中创建一个PHP文档。例如,如果您希望强制下载sample.pdf而不是内联显示,请创建如下脚本:

<?phpheader("Content-disposition: attachment; filename=sample.pdf");header("Content-type: application/pdf");readfile("sample.pdf");?>

PHP中的内容类型引用很重要——它是您要保护的文件的MIME类型。例如,如果您保存了MP3文件,则需要将application/pdf替换为audio/mpeg。

文件中任何地方都不应该有空格或回车符(分号之后除外)。空行将导致PHP默认为text/html的MIME类型,您的文件将不会下载。

将PHP文件保存到与HTML页面相同的位置。然后修改页面到PDF的链接,如下所示:

<a href="sample.php">Download the PDF</a>

考虑

这一程序有两个重要的考虑因素。首先,如果有人发现了PDF文件的直接链接,他或她可以直接访问它,而无需PHP的阻碍。第二,您需要使用这种快速简便的方法对每个想要保护的文件进行PHP保护。为了以这种方式保护多个文件,将受保护的文件和PHP文件命名为相同的名称是有意义的,只是扩展名不同,以保持一切正常。

  • 发表于 2021-09-08 13:20
  • 阅读 ( 106 )
  • 分类:数学

你可能感兴趣的文章

如何在一个树莓圆周率主持自己的网站

...可以选择使用设备RAM进行临时读/写文件存储。当您决定如何使用非常小的web服务器时,您可能需要更改这一点。 ...

  • 发布于 2021-03-21 14:29
  • 阅读 ( 240 )

什么是php文件(如何打开一个)?

...本编辑器,如Notepad、Notepad++、Sublime text、Vi等。 相关:如何在Windows中用另一个文本编辑器替换记事本 如果您只需要快速查看一个文件,您可以使用记事本,而不必下载任何其他软件。如果您打算编辑代码,我们建议使用正确格...

  • 发布于 2021-04-04 08:47
  • 阅读 ( 277 )

如何用wget从终端下载php源代码

...况下,重定向器会将文件名的名称更改为“mirror”,那么如何解决这个问题呢?幸运的是,wget有一个简单的参数,您可以使用它来修复它—它对许多场景都很有用。 每当您想强制Wget命令的输出进入一个特定的文件名时,您只需...

  • 发布于 2021-04-11 07:50
  • 阅读 ( 168 )

最好的免费程序和在线服务发送和共享大文件

...s, like the personal drop box, transfer history, larger size limit, higher download limit, storage space and much more. TitanFile TitanFile allows you to drag and drop files from various sources, and share them securely with your colleagues or clients on the go, using any device at any time and...

  • 发布于 2021-04-12 03:10
  • 阅读 ( 490 )

8个致命的命令你不应该在linux上运行

...么这可能是危险的—不要运行不受信任的脚本。 wget – Downloads a file. (You may also see curl in place of wget.) http://example.com/something – Download the file from this location. | – Pipe (send) the output of the wget command (the file you downloaded) directly to another c...

  • 发布于 2021-04-12 05:48
  • 阅读 ( 168 )

如何在windows pc上设置自己强大的wiki

...以在这里创建和链接文章。在今天的文章中,我们将解释如何安装和配置MediaWiki而不必阅读书籍。 我们将从一个5分钟的快速安装指南开始,我们将介绍一些管理技巧,例如:创建用户、将用户分配到组,以及如何使用自定义外...

  • 发布于 2021-04-12 21:30
  • 阅读 ( 158 )

如何在WindowsServer2008的IIS7上安装php

... 接下来,我们必须映射在“处理程序映射”中配置的IIS如何执行PHP脚本。 在处理程序映射中,添加一个新的模块映射。 使用模块接口“FastCgiModule”将模块的请求路径设置为PHP文件(*.PHP)。将可执行文件设置为与上述FastCGI设...

  • 发布于 2021-04-13 11:48
  • 阅读 ( 139 )

如何在iis 6 for windows server 2003上安装php

web上最流行的开发平台之一是PHP,它支持许多流行的应用程序和网站,如Facebook、WordPress和Joomla。虽然这些系统中的大多数都是“设计”为在运行apacheweb服务器的Linux系统上使用的,但是您可以在Windows server2003系统上通过iis6部署P...

  • 发布于 2021-04-13 11:55
  • 阅读 ( 146 )

如何推出你自己的可怕的拖放文件共享服务

...需要首先使用FTP应用程序创建该目录。我们稍后会讨论你如何做到这一点,所以如果你不知道怎么做,不要担心。最后,输入将用于访问上载文件的URL前缀。无论您是否使用上载文件夹或上载到域的根目录,该URL都将如下所示:...

  • 发布于 2021-05-27 02:53
  • 阅读 ( 186 )

zend框架1(zend framework 1)和2.(2)的区别

...work 2 什么是zend框架1(zend framework 1)? Zend framework 1是一个使用PHP5的开源框架,它实现了100%面向对象的代码。它具有组件结构,遵循松散耦合的体系结构。因此,程序员可以在应用程序中单独使用这些组件。又称“随意使用”设...

  • 发布于 2021-07-01 06:40
  • 阅读 ( 345 )
伊语织
伊语织

0 篇文章

相关推荐