HTTPS:不会在名称中显示带有#,“或%的图像

时间:2012-09-05 19:30:03

标签: image

我有一个显示https:图片的网站就好了。但是,如果图像具有特殊字符,例如#,“或%,则图像将不会显示。我的网址都是相对的,以便同时容纳http和https。它们都完全显示在http上。 示例网址:/images/misc/1_4-20x3_4"-hex-pl_s.jpg。 使用Apache服务器。使用Progress Open Edge进行编程。

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:0)

#%是网址中的保留字符。 #表示锚点,%表示编码。

尝试将#替换为%23,将%替换为%25

答案 1 :(得分:0)

这是因为URI转义。

当您的文件名包含#,“或%,例如file#1%2".jpg时,您应该使用类似

的内容
<img src="file%231%252%22.jpg">

检查此网站:http://www.blooberry.com/indexdot/html/topics/urlencoding.htm

他们甚至有一个(手动)转换器,但你应该明白......