我有一个后端和一个前端。 一切都是正确的。图像链接正确,并显示图像。
/img/imgProducts/Coda_VolpeAmineo%20Coda%20di%20Volpe%20IGP%206%20bottiglie%20?1367589931
在后端,相同的代码,我有一个空白的图像。
/img/imgProducts/Coda_VolpeAmineo%20Coda%20di%20Volpe%20IGP%206%20bottiglie%20
为什么在前端我看到随机数?没有它,图像是空白的。谁在放这个号码?
代码是
echo ($html->image(($this->data['Product']['imagelink']),array('title'=>$this->data['Product']['name'],'width'=>80 )));
答案 0 :(得分:2)
那是URL encoded image link ..您的图片文件名中可能包含空格和其他字符。
答案 1 :(得分:2)
URL末尾的随机数是一个时间戳,用于防止webbrowsers缓存旧版本的图像。
默认情况下,时间戳资产(图像)被禁用,但可以在开发期间启用(即启用“debug”时),但也可以通过设置{{1}来强制在Asset.timestamp
内配置'强制'
在您的应用中查找app/Config/core.php
。请参阅core.php配置文件中的以下行:
https://github.com/cakephp/cakephp/blob/master/app/Config/core.php#L212
如果您在网址中看到时间戳,这可能是由Configure::write('Asset.timestamp', true);
内启用调试引起的。真的不鼓励运行启用调试的实时网站。这不仅会使您的网站变慢(禁用服务器端缓存),它还会在浏览器中输出错误消息,在某些情况下可能存在安全风险!