从linux主文件夹访问文件

时间:2012-06-13 07:46:57

标签: php linux

我的图像位于linux主目录中。我必须访问这些图像并向用户显示。

当我试图在css文件中包含这样的位置时

background: url('/home/images/imagename.jpg');

它正在查看htdocs /usr/local/apache/htdocs/home/images/imagename.jpg。

并且,我也尝试从主文件夹加载xml,它也做同样的事情

$test = file_get_contents ( '/home/test/test.xml' );

请建议我如何实现这一目标。

因为我在主目录中有不同的文件夹,其中包含图像和xd文件。我写了逻辑来显示来自不同文件夹的图像,但我无法从家中访问。

3 个答案:

答案 0 :(得分:0)

在CSS文件中,路径来自“URL_ROOT”,类似于:http://www.myurl.tld/

file_get_contents中,路径来自“file_system”,但Apache不能访问“HOME”。

您必须将要显示给用户的IMAGES / XML放在Apache可访问和可读的目录中;比如“htDocs”:/var/www/

答案 1 :(得分:0)

代表file_get_contents;

如果您将php.ini中的open_basedirinclude_path(或apache配置中的php_flag指令)设置为/home/images/home/test/(以您为准) “正在使用”然后这应该有所帮助。

此外,您可能需要授予www-dataapache用户权限。

对于CSS声明,您只能访问域根目录之上的文件。

答案 2 :(得分:0)

试试这个

$file = file_get_contents('./imagename.jpg', FILE_USE_INCLUDE_PATH);
在php.ini文件中

进行此设置

include_path=".:/home/images"

或在运行时使用此功能

set_include_path()  for same