我有一个网站,可以在不同目录中包含图像。我是 运行Linux的映像,其中一些映像可以位于/ tmp /中,而其他映像可以位于代码库目录之外的目录中。例如,我有:
/ tmp /
/ home / work / codebase / htmlfiles
/ home / stuff / stuff / images
我用来尝试访问这些目录的代码是这样的:
<img src="' + path + image + '">;
其中path是目录,而image是文件名。路径确实结束 与/。目前,即使我有,它也只会给出404错误 确认该目录中有这样的文件。
我想念什么吗? HTML是否不允许您从 根目录?
答案 0 :(得分:0)
您的网络服务器根据网络根目录显示文件。
因此,如果您的网站位于/ home / stuff / stuff中,则网络服务器会进行以下翻译:
Lookupset()
否则,将带来巨大的安全风险,允许任何在线用户从系统中提取任意文件。
对此有几种可能的解决方案,最好的方法取决于您的情况。
您可以将网络路径映射到您系统上的其他路径
http://httpd.apache.org/docs/2.0/mod/mod_alias.html#alias
您可以将包含图像的目录符号链接到webroot。确保您允许Web服务器遵循符号链接。
https://superuser.com/questions/244245/how-do-i-get-apache-to-follow-symlinks
您还可以将文件硬链接为存在于Webroot中,可以使用服务器端脚本语言,也可以仅移动文件。