在我的网站上显示来自不同目录(比index.html)的图片

时间:2018-01-14 00:31:30

标签: html permissions raspberry-pi filepath lamp

我在一个覆盆子pi上建立了一个LAMP(MP现在不重要)的网站。 该网站应显示位于与index.html所在的目录不同的目录中的图片.index.html位于系统所在的同一张卡上,而图片位于连接到服务器的USB上

这是结构: INDEX的结构:/var/www/newdir1/newdir2/index.html PICTURE的结构:/disk/newdir3/newdir4/picture.png

我使用的文件路径是: img src =" ../../../../ disk / newdir3 / newdir4 / picture.png" ALT ="图像" ID =" someid" /

我尝试添加或删除" ../"即使我确定上面提到的路径是正确的。

我将使用过的用户(假设" demo")添加到www-data组,并将newdir2和newdir4的权限更改为demo:www-data。但这似乎也不是解决方案。

我仍然相信它与权限有关。

我有两个问题: 它真的与许可相关吗? 如果是这样,我如何更改权限以使其工作? 如果没有,它与什么有关? (我知道这是三个问题但回答必须只有两个)

提前问候和致谢,

福克

2 个答案:

答案 0 :(得分:0)

Apache(LAMP中的A)通过http服务你的html文件,但它可能只服务于/ var / www目录。要从html引用图像,图像也必须通过http提供,但Apache可能不提供它。

权限也可能是问题,但如果要从html引用它,则需要提供图像。

答案 1 :(得分:0)

Apache只允许一个" root"每个主机的目录(称为DocumentRoot)。您的设置可能设置为/var/www/,因此无论权限如何,都尝试访问不可用的任何内容。

对于您的用例,最好的解决方法可能是在您的Apache配置中添加Alias。您的httpd.conf文件中包含以下内容:

Alias "/img" "/disk/newdir3/newdir4"

这样你的html就可以包含img src="/img/picture.png"

备用方法是将您的图片目录符号链接到/ var / www目录中。有关详细信息,请参阅Apache手册的this section