【问题标题】:WordPress redirect file URLWordPress 重定向文件 URL
【发布时间】:2017-12-19 13:10:51
【问题描述】:

我目前正在开发一个 WordPress 插件,该插件可以为上传的文件设置过期日期。

过期后,用户应该被重定向到显示当前文件已过期的页面。

例如:

管理员在网站上添加一个名为“myPDF.pdf”的 pfd,并将过期日期设置为 2 天。

用户可以通过链接输入pdf:

http://localhost/wordpress/wp-content/uploads/2017/12/myPDF.pdf

前 2 天用户可以打开和阅读 PDF,2 天后用户应该被重定向到

http://localhost/wordpress/this-file-was-deleted

这可能吗?我正在考虑在 .htaccess 中重定向到

http://localhost/wordpress/checkfile&q=myPDF.pdf

【问题讨论】:

    标签: php wordpress .htaccess pdf


    【解决方案1】:

    它非常简单,当您上传文件时,将元数据保存在 db 中,并使用键值(如 expiry_date)并将值作为其到期日期。

    当您获得该文件时,只需检查其到期日期,如果当前日期大于该到期日期,则重定向到您想要的网址。

    您还需要将文件 url 也存储在 db 中并遍历这些 url,如果该 url 命中与否,则通过 $_GET 检查它们。

    【讨论】:

    • 那部分确实很简单,但是问题是不能直接通过链接localhost/wordpress/wp-content/uploads/2017/12/myPDF.pdf访问文件时执行php代码
    • @Matthew,您可以将所有直接文件 URL 重定向到执行检查的 php 文件,然后提供文件,或使用 cookie 保护直接文件下载。有很多方法可以实现您想要的行为。此外,首先确保不公开直接 URL 也会有所帮助。
    • offcouse @Matthew 你可以,在这种情况下,你需要将文件 url 也存储在数据库中并循环遍历这些 url,如果该 url 命中与否,则通过 $_GET 检查它们
    猜你喜欢
    • 1970-01-01
    • 2011-02-13
    • 2021-02-10
    • 2011-05-30
    • 2017-06-01
    • 2010-12-21
    • 1970-01-01
    • 1970-01-01
    • 2016-11-07
    相关资源
    最近更新 更多