我有一个非常奇怪的问题:
如果我通过使用 $_SERVER['DOCUMENT_ROOT']
在我的 HTML 代码(localhost - WAMP)中使用绝对 url/路径作为图像源,我的所有图像都会损坏,我不知道为什么 :(
PHP 包含绝对没问题,只有我的图像表现得很奇怪。绝对图像路径本身(由 $_SERVER['DOCUMENT_ROOT']
+ 我的路径变量生成)在本地主机之外工作正常。(我尝试将网址复制并粘贴到我的浏览器栏中,然后图像按预期显示。但在我的本地主机环境中,所有图像都损坏了)。
此问题的屏幕截图示例
正如您在此处看到的,链接悬停时我的 Chrome 元素检查器显示的图像路径与 $_SERVER['DOCUMENT_ROOT']
创建的实际路径完全不同,并且这让我抓狂,因为 HTML 中的路径是正确的,而不是另一个......有什么想法可以解决这个问题吗?
提前致谢!
这是到目前为止我的代码:
$sysvar_category_default_image="/design/category_images/category_default.jpg";
$path= $_SERVER['DOCUMENT_ROOT'] .$sysvar_category_default_image;
// $path is: C:/wamp64/www/design/category_images/category_default.jpg
$path= $_SERVER['HTTP_HOST'] .$sysvar_category_default_image;
// $path is: localhost/design/img/icons/default.png
两条路径都正确粘贴在浏览器栏中(这些是正确的实际图像路径),但我的 WampServer 以某种方式搞乱了它们(也许这是一个配置问题,但此时我真的迷失了)
最佳答案
您正在使用文档根目录吗?这是本地路径,而不是 URL。不要这样做!
使用 $_SERVER['HTTP_HOST']
代替,或者忽略域并使用从 /
开始的绝对网址。
关于php - Wamp VS PHP : absolutely fine & accessible image path seems broken,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52423829/