访问位于服务器根目录之前/之外的文件?

2024-06-26

我正在为一家售后客服企业做一个内网。员工需要能够将 img 文件上传到互联网服务器,我需要将它们存储在 is BEFORE 的目录中www(网站的根目录)。

使用 php 执行此操作非常简单,但如何在上传这些图像后将它们包含在网站上? 我试过这段代码

<img src="../img/img.png"/>

这不起作用,因为如果文件位于服务器之外,我无法发送文件www目录 ...

有什么正确的方法可以做到这一点吗?

当前树视图:

server root directory
           |www
               |(all server files)
           |img
               |(all img files)

(服务器的index.php位于www文件位于img)


您无法直接访问 Web 目录之外的任何文件。由于您的问题也包含 PHP 标签,我假设您可能想使用它。

您可以执行以下操作:

在您的 www 目录中,创建一个“image.php”文件,其内容类似于:

<?php
  header('Content-Type: image/png');
  readfile("../img/" . $_GET['img']);
?>

并调用你的图像

<img src="image.php?img=myimage.png" />

请注意,您的 PHP 文件不应该那么简单:) 因为您可能想要处理多种图像格式(并为它们提供正确的标头),检查恶意文件路径/包含内容(您不想使用 $ _GET 而不验证/清理输入),额外的缓存等等等。

但这应该能让您了解如何针对您的问题。

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

访问位于服务器根目录之前/之外的文件? 的相关文章

  • 登录 WordPress 后重定向

    我正在根据现有网站创建自定义 WordPress 主题 我想使用我创建的备用仪表板 我怎样才能将用户定向到 news php 登录后而不是 wp admin EDIT 为此有一个可用的插件 但任何可以通过functions php找到手动方
  • Laravel - 在一个方法中返回多个值

    这是我目前陷入困境的地方 我正在执行多种方法 对同一个表进行不同的查询 public function totalOfA return a Stocks where user id this gt employee gt id gt whe
  • 如何在 .css 文件中使用 php 变量

    我有一个名为test css我想用它 var var is at test php test css附于test php 我的结构是这样的 test php 这是 test css test css
  • PHP CLI 有几秒钟的延迟

    当我在 CLI 模式下运行 PHP 时 CentOS 6 5 下的 PHP 5 6 6 使用 VirtualBox 作为虚拟机运行 即使我只检查版本并且禁用 php ini 文件 也会有几秒钟的延迟 time php n v PHP 5 6
  • 使用 laravel 拒绝 .composer/config 文件权限

    我在 ubuntu virtualbox 上有一个 laravel 项目 我曾经跑步composer update一切都很好 我不知道有什么变化可能会影响这一点 但现在当我跑步时composer update I get file get
  • Apache 在多个虚拟主机上运行 Zend Framework 时出现间歇性 500 错误

    我们已经在一个项目上工作了几个月 没有出现任何问题 直到最近进行了一系列更新 服务器运行 Amazon Linux AMI 版本 2010 11 1 Apache 2 2 16 和 PHP 5 3 3 该项目分为几个独立的开发人员分支 作为
  • 当用户单击链接时如何在表中创建新字段

    我的表格如下图所示 In order to insert data from this form into table I coded this supplier info supplier name POST supplier name
  • php imagecopyresampled 添加黑色背景

    我有一个调整图像大小的脚本 它采用 130x81 图像并将其添加到 130x130 图像中 当 imagecopyresampled 函数运行时 它会在剩余的空间中添加黑色背景 即使基本图像是白色的 下面的代码 我真的很感激一些帮助 The
  • 如何在 Windows 上以纯 PHP 形式提取 .tar 文件?

    我有一个 PHP 脚本 我想在 Windows 上运行 我需要提取 tar 文件 如何提取 tar 文件 我知道 PharData 类 它可以在 Linux 上运行 但不能在 Windows 上运行 我的脚本就死了 没有错误输出或任何东西
  • 致命错误:在非对象上调用成员函数 FetchRow()

    这是我的错误消息致命错误 Call to a member function FetchRow on a non object in C AppServ www hfix include care api classes class min
  • date() 和 strtotime 的问题

    这是我所拥有的 str 12 25 2009 echo date Y m d strtotime str 这会产生 1969 12 31 而不是 2009 12 25 如果我将 str var 设置为 01 01 2009 我将得到正确的
  • 在 foreach 循环中使用 next

    我正在使用 foreach 循环数组 在特定情况下 我需要在迭代到达下一个元素 如预测 之前知道下一个元素的值 为此 我计划使用该功能next http www php net manual en function next php 在文档
  • 将数组值翻转为数组键的函数? [复制]

    这个问题在这里已经有答案了 有没有一个php函数可以接受下面的数组 array size 4 1 gt string 0 6 gt string 1 7 gt string 1 8 gt string 7 将其翻转到下面的数组 请注意 数组
  • 如何使用 Amazon S3 SDK 更新元数据

    我正在使用 Amazon 的 AWS SDK 的 PHP 版本 我有一堆带有Expires标头 我想删除该标头并添加一个Cache control标题代替 这更新对象 http docs amazonwebservices com AWSS
  • 在 PHP 中,如何检查函数是否存在?

    如何检查该功能是否可用my functionPHP 中已经存在 Using function exists http php net function exists if function exists my function my fun
  • 一系列 unicode 点的正则表达式 PHP

    我正在尝试从字符串中删除所有字符 除了 字母数字字符 美元符号 下划线 代码点之间的 Unicode 字符U 0080 and U FFFF 通过这样做 我得到了前三个条件 preg replace a zA Z d foo 我如何去满足第
  • PHP 中的随机排列对象

    如何在 PHP 中对对象进行排序 我试过shuffle 但这需要一个数组 Warning shuffle expects parameter 1 to be array object given in var www index php o
  • 构建、部署、配置和回滚所需的 Jenkins 指南,保留 5 个版本

    我对詹金斯很陌生 有一定的了解 但需要进一步的指导 我在 Git 存储库上有一个 PHP 应用程序 它使用 Composer 具有资产 具有用户上传的媒体文件 使用 Memcache Redis 具有一些代理 工作人员 并且具有迁移文件 到
  • 将字符串中每个单词的第一个字符大写,“and”、“to”等除外

    如何使字符串中每个单词的第一个字符大写接受几个我不想转换的单词 例如 和 to 等 例如 我想要这个 ucwords art and design 输出下面的字符串 艺术与设计 有可能像 strip tags text p a 我们允许 并
  • Laravel 5 中的两个登录表单

    我一直想知道如何在 laravel 5 中制作两个登录表单一段时间 原因是因为我有一个多站点项目 我在一个项目中拥有管理站点和公共站点 我对路由进行了分组 以便管理路由回答一个域 公共路由回答另一个域 如下所示 Route group ar

随机推荐

  • 为 Final-form-arrays 中的数组提供初始值会导致状态更改重置整个表单,我该如何防止这种情况?

    我有一个使用最终表单数组的表单 表单有效且验证有效 但是 当我在组件内进行状态更改时 它会重置我的所有值 我能够使用react final form arrays提供的相同示例复制该问题 https codesandbox io embed
  • Vue.js:折叠/展开父级中的所有元素

    我需要为我的 Vue 组件 一些可折叠面板 添加 展开 折叠全部 功能 如果用户单击折叠按钮 然后单击某个面板并将其展开 然后单击折叠按钮不会做任何事因为观看的参数不会改变 那么如何正确实现此功能 按钮必须始终折叠和展开组件 我准备了简单的
  • 如何使用我的 Apple 开发者 ID 签署 .jar 文件

    我有一个java可执行文件jar我需要使用我的 Apple 开发者 ID 进行签名的文件 我不打算通过应用程序商店分发它 我将通过我的网站直接向客户分发该应用程序 我不打算绕过 Gatekeeper Signing the app和我的de
  • Android avd 管理器根本不工作 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我最近想尝试创建一个 Android
  • D3js多个父节点

    我正在尝试 d3 和树布局 我认为是否可以创建具有两个根的树 我知道树只有一个根是规则 但也许有人有一些例子 这是一个Fiddle http jsfiddle net 2ob0drfk 1 显示我认为您正在寻找的内容 重要的代码就在底部附近
  • ViewController.swift(界面)文件的用途是什么 - 在 Counterparts 中

    我刚刚注意到一个名为ViewController swift Interface 当我创建第一个 ViewController 时 Xcode 自动创建了它 Swift 中的类是否具有 需要与 Objective C 中相同的接口 并且由
  • 如何以编程方式设置 iOS 6/7 Delta

    当我离开 iOS6 时 我正在使用 Xcode 4 6 开发 UISplitView 应用程序 我有设计 现在我迁移到新的 Xcode5 现在我有这样的设计 UINavigationBar 完全重叠我的 UISearchBar Leo Na
  • 资源文件中的控制字符 C#

    我想添加Left To Right控制字符在resource resx文件输入Visual Studio 我在互联网上搜索并找到了一个名为在 NET 资源文件中转义序列的另一种方法 http www devx com tips Tip 34
  • 如何在git中定义ESC字符?

    我想在 git 输出中使用着色 例如 git log decorate color 当我发出这个命令时 我得到的输出看起来像ESC 1 32m where ESC是反色的 在我看来 这是一个有效的转义序列 除了 033必须发送而不是字符E
  • 如何防止函数中的隐式转换?

    我正在编写一个实用程序类 其中包含 IsEquals 和 IsGreaterThanEquals 等接受 double 类型参数的方法 当我将浮点值发送到方法时 它们会隐式转换为双精度值并进行比较 我不希望这种事发生 当我发送 float
  • Xcode 6 iOS 8 UIImage imageNamed 来自捆绑包问题

    我使用 iOS 7 1 构建我的项目 并尝试使用存储在 images cars car 1 png 中的图像加载 UIImage 视图 所有图像都位于项目树中的图像文件夹中 如下图所示 所以它非常适合 iOS 7 1 和 Xcode 5 但
  • Zip 实用程序在 Linux 中每次都给我不同的 md5sum

    当我在 Linux 中压缩 Zip 2 31 同一个文件时 每次都会得到不同的校验和 如何保持上次的 md5sum 相同 我正在使用 yum 提供的最新 zip 更新 生成的存档不仅包含压缩文件数据 还包含 额外的文件属性 如参考zip 文
  • 通过 SSH 隧道访问 LDAP

    我通过 SSH 根访问 访问了客户办公室网络内的一台机器 我正在我的计算机上编写一个需要集成到 LDAP 的 PHP 应用程序 LDAP 服务器位于我客户网络的另一台服务器中 并且not可以从外部访问 但是我可以通过可以通过 SSH 连接的
  • 使用 Java Google App Engine 批量加载程序将整个数据存储区下载到一个 csv 文件

    我目前正在使用 kind参数来指定下载的类型和 filename指定要生成的 csv 文件的名称 这 rps limit bandwidth limit and batch size用于加速下载 例如 要下载我正在使用的游戏类型 appcf
  • C++ 构造函数根据参数类型调用另一个构造函数

    我有这门课 class XXX public XXX struct yyy XXX std string private struct xxx data 第一个构造函数 使用结构 很容易实现 第二 我可以将一个字符串以特定的格式分开 解析
  • 从 Axios 响应中解析 XML,推送到 Vue 数据数组

    在我的 Vue 应用程序中 我使用 Axios 获取 XML 文件并使用parseString将 XML 解析为 JSON 然后我需要通过result到 Vue 数据 this events My console log将解析后的 XML
  • 从不同的控制器修改 $rootscope 属性

    在我的 rootscope 中我有一个visible控制 div 可见性的属性 app run function rootScope rootScope visible false HTML 示例 section section
  • 如何摆脱 Devise 上的电子邮件正则表达式消息?

    我在用着设计令牌认证 https github com lynndylanhurley devise token authgem 每次我在 Rails 4 2 5 应用程序中运行测试套件时 我都会收到来自 Devise 的弃用警告 弃用警告
  • 如何防止 Parallel.ForEach 循环在运行时更改任务数量?

    我正在使用Parallel ForEach循环做一些工作 我用localInit像这样 localInit gt new foo new Foo bars CreateBars 根据文档 https learn microsoft com
  • 访问位于服务器根目录之前/之外的文件?

    我正在为一家售后客服企业做一个内网 员工需要能够将 img 文件上传到互联网服务器 我需要将它们存储在 is BEFORE 的目录中www 网站的根目录 使用 php 执行此操作非常简单 但如何在上传这些图像后将它们包含在网站上 我试过这段