PHP/Apache 拒绝用户访问文件夹,但不拒绝脚本访问

2023-12-10

所以我有这个 php Web 应用程序,并且我的文件夹之一包含一些可以下载的文件。

我有一个修改标题的下载脚本,以便始终提供下载链接。 (例如,当您单击链接时,会弹出一个下载框,而不是显示图片)

现在,如果您输入如下网址:http://www.mywebsite.com/content/您将获得所有可下载文件的列表,当然,您可以直接下载所有文件,而无需通过网站界面。

就我个人而言,我认为这不是问题,因为我经常使用 downthemall 或其他下载工具,而且这种类型的访问非常节省时间......

但我的公司当然不这么认为:-p 他们希望人们使用该界面来查看广告...

它们是否是一种方法,也许使用受保护的 .htaccess,让文件夹访问我的下载脚本,但拒绝用户访问......?

我希望我说得有道理,你明白我的意思:)

感谢所有帮助/评论!


将该文件夹移出 Web 服务器的根目录,以便 apache 根本不会从该目录中提供文件。如果 apache/http 用户可以读取该文件夹中的文件,您仍然可以包含该文件,但您的站点用户将无法从任何 URL 访问它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP/Apache 拒绝用户访问文件夹,但不拒绝脚本访问 的相关文章

  • 在apache中有条件地设置缓存头

    我想根据访问文件的路径有条件地设置缓存标头 基本上 访问http www example com cache cache key 应该为具有遥远未来缓存标头的文件提供服务 我使用重写规则来设置环境变量 然后尝试根据该变量设置缓存控制标头 然
  • 通过 __get() 通过引用返回 null

    快速规格 PHP 5 3 error reporting 1 the highest 我正在使用 get 通过引用技巧神奇地访问对象中任意深度的数组元素 快速示例 public function get key return isset t
  • facebook php - 如何获取专辑封面照片

    我需要使用 PHP SDK Facebook 获取专辑封面照片 我尝试 https graph facebook com ALBUM ID picture type album 但我得到默认图像 例如 获取用户 https graph fa
  • SMTP 配置在生产中不起作用

    我正在尝试在提交表单时发送电子邮件 我正在使用 PHPMailer 使用以下配置发送邮件 mail new PHPMailer mail gt isSMTP mail gt Host mail example in mail gt Port
  • PHP 绑定“bigint”数据类型(MySQLi 准备好的语句)

    studentId 57004542323382 companyOfferId 7 sql INSERT INTO studentPlacement companyOfferId studentId VALUES if stmt db gt
  • 如何用 C++ 编写 Apache 模块?

    我想用 C 编写一个 Apache 模块 我尝试了一个非常准系统的模块来启动 include httpd h include http core h include http protocol h include http request
  • 第三个下拉菜单不从数据库填充

    我有以下 Index php
  • 通过 facebook graph API 检索 facebook 用户的邮政编码

    我正在尝试使用 facebook graph API 检索用户的邮政编码 我正在使用以下代码 代码在php ini中 facebook new Facebook array appId gt APP ID secret gt APP SEC
  • 使用先前的反向引用作为命名捕获组的名称

    有没有办法使用对先前捕获组的反向引用作为捕获组的名称命名捕获组 这可能不可能 如果不可能 那么这就是一个有效的答案 下列 data description some description preg match data matches p
  • 强制 Apache HTTPD 以 32 位运行

    我通过从二进制文件 以及 ppc 部分 中剥离 32 位架构 以 64 位模式运行 Apache HTTPD 我这样做是为了使其与 python 和 mysql 更加兼容 然而 我有另一台机器需要它以 32 位模式运行 它仍然保留所有四种原
  • 如何阻止直接访问我的 JavaScript 文件?

    我使用 Minify 来缩小并缓存所有脚本请求 我只希望我的用户能够访问 JavaScript 文件的缩小版本 缩小位于www example com min我的脚本位于www example com scripts 如何阻止直接访问doc
  • 如何在 PHP 中使用 cURL 发出同时包含 GET 和 POST 参数的请求?

    其他人已经问过如何从 perl java bash 等执行此操作 但我需要在 PHP 中执行此操作 并且我没有看到任何已提出的专门与 PHP 相关的问题 或包含 PHP 的答案 My code ch curl init url curl s
  • Magento - 检查 cms 页面

    我想通过 php 检查页面是否是 Magento 中的 cms page 我需要不同的 cms 页面面包屑 所以我尝试在一个条件下做到这一点 但我不知道如何或在哪里查看 到目前为止 这是我的 breadcrumbs phtml p some
  • Laravel 5 中的自定义验证器

    我正在将 Laravel 应用程序从 4 升级到 5 但是 我有一个自定义验证器 但无法运行 在L4中 我做了一个验证器 php文件并将其包含在全局 php using require app path validators php 我尝试
  • fgetcsv 在特定行打开?

    有没有办法使用 fgetcsv 在特定行上打开 我有一个非常大的 csv 想通过 ajax 一次运行大约 100 行 我可以轻松停止 while 循环 但如何在特定行上打开 或者这是不可能的 从第 100 行开始读取没有简单的方法 但您可以
  • JavaScript 验证和 PHP 验证?

    我正在使用 jquery 验证插件来验证空表单 我还应该在 PHP 中检查一下以确保 100 正确吗 或者用 javascript 验证就可以了 谢谢 您应该始终在服务器上进行验证 如果用户以某种方式不使用 Javascript 提交表单
  • 如何在 OS X 上使用 OpenSSL 1.0.1 编译 PHP 5.5.19

    我已经安装了 OpenSSL 1 0 1j usr local ssl现在我尝试使用此版本的 OpenSSL 编译 PHP 5 5 19 这是我的配置过程 export CFLAGS arch x86 64 export CXXFLAGS
  • suhosin.mt_srand.ignore 在 PHP 中一致洗牌数组的解决方法?

    我有一个 PHP 脚本 需要随机化一个具有一致结果的数组 这样它就可以向用户呈现前几个项目 然后如果他们愿意 他们可以从同一个打乱的集合中提取更多结果 我目前使用的是这个 基于我相信的 Fisher Yates 算法 function sh
  • 从支付网关重定向回时用户会话丢失

    我已将 Cyber source 配置为我的支付网关 我能够导航到 cybersource 并进行付款 并能够成功重定向回该网站 我也可以取消付款并重定向回我的网站 我收到来自支付网关的响应 但是 用户在从支付网关重定向回来时会被注销 我正
  • Laravel $request->file() 返回 null

    尝试在后端使用 Laravel 上传文件时遇到问题 Issue Laravel request gt file 方法返回 null Setup 我使用以下方法构建了一个 AJAX 请求超级代理人 https github com visio

随机推荐

  • 对象“_Global”的方法“Range”失败

    我试图循环遍历三个下拉列表中的项目 其中包含命名范围 A B 和 C 摘要输出根据所选下拉列表中的项目而变化 我想复制每个摘要输出 19 行 x 15 列的表格 并将它们粘贴到新工作表 表 3 中 例如 如果列表 A 中有 3 个项目 列表
  • 在 VueJS 中写入全局变量

    我在用 使用 VueJs 2 的全局数据作为我的起点 因为我只想读 写一个变量 我已在现有代码中添加了 click 事件来修改变量 但收到 未捕获的引用错误 myGlobalStuff 未定义 谁能看到我做错了什么 HTML div myG
  • %%F 变量始终引用 FOR 循环中的最后一项而不是当前项

    这看起来应该相当简单 但我在 DOS 中使用 FOR 循环来正确报告它正在评估的当前项目时遇到困难 我有一个简单的 DOS 批处理文件 它循环遍历目录中的所有文件并重命名它们 假设我的目录包含以下文件 File1 txt File2 txt
  • 模拟器无法连接互联网

    我的机器使用 WiFi 连接上网 并且 LAN 卡处于空闲状态 它不在代理或防火墙后面 但不知何故 我的模拟器的浏览器没有加载任何页面 这意味着模拟器无法连接到互联网 我搜索了很多但没有运气 可能的原因是什么 请帮忙 提前致谢 我在 OS
  • 为什么下面的代码会导致死锁

    我有以下课程 public class LockTester implements Runnable private static Locker locker new Locker public static void main Strin
  • JaxB 重命名具有重复名称的类

    我必须使用一个包含以下代码片段的架构 其中名称object是重复的
  • 如何使用 Maven 构建 Spark 1.2(给出 java.io.IOException:无法运行程序“javac”)?

    我正在尝试使用 Maven 构建 Spark 1 2 我的目标是在 Hadoop 2 2 上使用 PySpark 和 YARN 我发现这只能通过使用 Maven 构建 Spark 来实现 首先 这是真的吗 如果是的话 下面的日志有什么问题呢
  • 并行运行行为测试(在两个浏览器窗口中)

    我跟着这个博客作为一个例子并阅读平行跑者信息 当我打电话时bin behat命令后 将打开一个浏览器窗口并使用以下设置成功运行所有测试 symfony behat yml default context class Site CommonB
  • 在 OSX 10.10 Yosemite 中安装 JDK 1.5

    我使用 OS X Yosemite 10 10 2 并且必须使用 JDK 1 5 进行遗留应用程序开发 我发现this帖子指的是this在 Lion 和 Mavericks 中安装 JDK 4 5 6 的脚本 在评论中我发现这两行 usr
  • 分析 DLL/LIB 膨胀

    我在VS2005中继承了一个相当大的C 项目 它编译成大约5MB的DLL 我想缩小库的大小 以便对于从慢速网络共享使用它的客户端来说 它可以通过网络更快地加载 我知道如何通过分析代码 包含内容和项目设置来做到这一点 但我想知道是否有任何可用
  • 为什么 Directory.GetFiles() 在后续运行中运行得更快?

    我不太确定是什么原因造成的 所以如果我在搜索中找不到所需的信息 请原谅我 这是一个例子 假设我们有一个包含 1 000 000 个文件的文件夹 运行 Directory GetFiles 需要几分钟的时间 然而 之后再次运行它只需要几秒钟
  • Visual Studio 2013 编译器警告未显示

    我昨晚安装了 Visual Studio 2013 我注意到它根本没有显示任何警告 具体来说 我希望它突出显示未使用的局部变量 私有方法等 Visual Studio 中是否有需要启用的设置 我偶然遇到了解决方案 右键单击 您的项目并选择
  • 在 ActiveResource 中设置站点/用户字段

    我正在构建一个 sinatra 应用程序 它将使用 Highrise CRM gem 访问 Highrise 数据 这个 gem 基于 ActiveResource 类 我想为每个请求设置站点 用户字段 我遵循了这里发布的建议 基于每个用户
  • 如何抑制 Maven“无法找到资源”消息?

    我如何告诉 Maven 对于无法找到依赖项的存储库抑制 无法找到资源 信息消息 但显示那些它确实找到依赖项的存储库 也就是说 显示命中 但忽略未命中 因为它们淹没并掩盖了命中 例如 代替此输出 Downloading http downlo
  • 为什么了解 Asp.net 生命周期对于 Asp.net 编码很重要?

    为什么了解 Asp net 生命周期对于 Asp net 编码很重要 因为否则 您最终会对代码做出错误的假设 在不了解平台如何工作的情况下为平台进行开发绝不是一个好主意 至少 allASP Net 开发人员必须了解客户端代码 Javascr
  • android 在任何应用程序顶部显示带有弹出窗口的通知

    使用下面的代码 我的通知仅添加到通知栏 不会显示弹出式消息 就像您在另一个应用程序中收到 Whatsapp 消息一样 是什么导致通知发生这种情况 private void sendNotification int distance View
  • 一段时间后失去与 MySQL 的连接,并且没有重新连接

    我正在开发一个独立的服务器 它使用 JPA Hibernate 来访问 MySQL 数据库 当我启动服务器时 一切正常 然而 一段时间后 通常是第二天早上 如果我下午启动它 它将停止工作 因为显然与 MySQL 的连接已关闭 我看到很多So
  • 谷歌静态地图通过倾斜获得卫星视图

    在文档中没有看到任何内容 所以我想我会在这里问 对于通过谷歌静态地图 API 捕获图像 有什么方法可以获得倾斜的视图吗 似乎没有任何关于如何查询此内容的文档 Thanks 我做了一个小例子 可以帮助你 它使用 html2canvas js
  • 似乎 JavaMail 的 MimeBodyPart.setFileName 在电子邮件中插入换行符并导致文件名显示为无效

    我们有代码可以发送到一个人的邮箱并将带有附件的电子邮件复制到文件系统 用于复制消息和附件的代码对于大多数文件都可以正常工作 但长文件名会出现问题 if attachment instanceof FileAttachment attachm
  • PHP/Apache 拒绝用户访问文件夹,但不拒绝脚本访问

    所以我有这个 php Web 应用程序 并且我的文件夹之一包含一些可以下载的文件 我有一个修改标题的下载脚本 以便始终提供下载链接 例如 当您单击链接时 会弹出一个下载框 而不是显示图片 现在 如果您输入如下网址 http www mywe