【问题标题】:Where downloads folder should be placed in CodeIgniter下载文件夹应该放在 CodeIgniter 的哪里
【发布时间】:2013-08-19 16:26:54
【问题描述】:

我应该把我的下载文件放在哪里?

这些不应向公众开放。 但应该可供注册用户访问。

我的目录结构如下。

-应用
-系统
-下载
---abc.7z
-index.php

可以看出,用户可以通过以下方式直接访问下载。

127.0.0.1/CI/downloads/abc.7z

但为了使其受到限制,我添加了 .htaccess 和以下指令

Deny from all

它现在受到保护,不被公共访问,但我无法从前面提到的视图中访问它。
<a href="<?php echo base_url().'/downloads/abc.7z' ?>">click here to download</a>

【问题讨论】:

    标签: .htaccess codeigniter codeigniter-2


    【解决方案1】:

    要使文件仅供注册用户下载,您可以对用户隐藏实际文件名。

    1. 维护一个表以映射关键字(唯一)和实际文件名。

    2. 提供指向控制器方法的链接,其中参数作为文件的关键字(不要显式显示文件名)。

    3. 根据映射读取文件并将文件名更改为随机密钥(例如会话 ID),然后作为下载提供。

    【讨论】:

      猜你喜欢
      • 2012-07-10
      • 2011-03-27
      • 2015-10-22
      • 1970-01-01
      • 2018-01-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-15
      相关资源
      最近更新 更多