问题描述
|
几天后,我发现了一种古玩情况,在发脾气以后我得以解决。
好了,问题是我将图像放置在动态创建的pdf(使用cfdocument)中。我在本地运行网站时可以看到该图像。但是,一旦我将代码上传到产品中,就会在图像占位符处获取损坏的图像。
解决方法
接受艾弗里特的建议,简要介绍了解决问题的方法。无法显示图像的问题是由于文档的HTTPS访问和未下载图像。所以我使用以下解决方法:
<cfdocument format=\"pdf\">
<cfoutput>
Some html content
<br>
<img src=#localUrl(\"img1.gif\")#><br>
<img src=#localUrl(\"images/img.jpg\")#>
</cfoutput>
</cfdocument>
<cffunction name=\"localUrl\" >
<cfargument name=\"file\" />
<cfset var fpath = ExpandPath(file)>
<cfset var f=\"\">
<cfset f = createObject(\"java\",\"java.io.File\")>
<cfset f.init(fpath)>
<cfreturn f.toUrl().toString()>
</cffunction>
,这通常是由内部路径与外部路径引起的。您可能在URL中引用了一个在内部可能无效的域。一种解决方案是将服务器的主机文件更新为包括所有有效域及其内部网络IP等效项。然后,当在服务器上请求域时,将引用内部IP而不是无效的外部IP。
http://www.google.com/search?q=host+file+internal+domain