首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >访问位于服务器根目录之前/外部的文件?

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

Stack Overflow用户
提问于 2012-11-13 17:08:57
回答 5查看 58.3K关注 0票数 13

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

使用php实现这一点很简单,但是如何在上传后将这些img包含在网站上呢?我试过这段代码

代码语言:javascript
复制
<img src="../img/img.png"/>

这是不工作的,因为我不能发送一个文件,如果它在服务器的www目录之外...

有什么适当的方法可以做到这一点吗?

当前树视图:

代码语言:javascript
复制
server root directory
           |www
               |(all server files)
           |img
               |(all img files)

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

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-11-13 17:26:40

您不能直接访问web目录之外的任何文件。由于您的问题还包括标签PHP,因此我假设您可能想要使用它。

您可以执行以下操作:

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

代码语言:javascript
复制
<?php
  header('Content-Type: image/png');
  readfile("../img/" . $_GET['img']);
?>

并调用您的图像

代码语言:javascript
复制
<img src="image.php?img=myimage.png" />

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

但这应该会让你对如何针对你的问题有一个想法。

票数 18
EN

Stack Overflow用户

发布于 2012-11-13 17:29:06

这取决于你想要实现什么以及如何实现。使用“简单的”html命令,正如你所发现的那样。您不能转到www根目录之外的目录。(例如,对于C上的xampp应用程序,大部分时间是c:\xampp\htdocs)。

如果您可以使用服务器端命令来完成您想要实现的功能,那么您可以使用PHP来解决这个问题,通过php读取适当的文件。例如,如果您的文件名为"myimg.gif“,并且位于"c:\pics”中

代码语言:javascript
复制
<img SRC="data:image/gif;base64,<?php echo base64_encode(file_get_contents("c:\pics\myimg.gif"));?>">

这样,您就可以读取文件的内容并将其直接写入img标记。请注意,您需要将image/gif更改为您真正需要的内容。

票数 7
EN

Stack Overflow用户

发布于 2012-11-13 17:17:51

您不能直接访问根目录(www或public_html)之外的文件。

您可以在Apache服务器配置中创建虚拟目录。谷歌"apache虚拟目录“以获取更多信息。

虚拟目录配置示例:

代码语言:javascript
复制
<IfModule alias_module>
  Alias /uploaded_images/ "/home/someuser/somewhere"
  <Directory "/home/someuser/somewhere">
    Allow from all
  </Directory>
</IfModule>

uploaded_images目录将像www目录中的普通目录一样,从web上可用。您可以将文件从那里复制到另一个位置(某种缓冲)。

你也可以通过ftp从php级别打开/复制该文件,而不需要改变apache中的任何东西,但这可能真的很慢(只有当你无法控制apache配置时才使用它,虚拟目录要好得多)。

php.net: FTP

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13357994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档