图像未显示在实时服务器上

我有一个需要在邮件中显示的徽标。在我的本地计算机上,显示了徽标,但是在实时环境所在的服务器上,未显示徽标。

我正在使用这样的路径:

imagePath = "~/Images/email-logo2.png";

email-logo2.png在本地机器上的同一个文件夹,并在服务器上存在了。

在此处输入图片说明

我试图添加权限以读取png所在的服务器文件夹,但无法解决问题。你能建议吗?

图像将添加到电子邮件中,如下所示:

HTML:

<img class="auto-style4" src="{PictureSrc}" /><br />

C#代码:

switch (property)
{
    case "PictureSrc":
        string imagePath = "";

        if (User.Identity.GetUserId<int>() == 3140 || 
            User.Identity.GetUserId<int>() == 3142)
        {
            imagePath = "~/Images/email-logo2.png";
        }
        else
        {
            imagePath = "~/Images/email-logo.png";
        }

        content = content.Replace("{" + property + "}", HttpContext.Server.MapPath(imagePath));
爱迪生

Server.MapPath返回磁盘上的路径(例如C:\images\image.png),而不是URL。请参阅https://msdn.microsoft.com/zh-cn/library/system.web.httpserverutility.mappath(v=vs.110).aspx

因此,查看来自另一台计算机的电子邮件的用户显然将无法解析服务器磁盘上的路径,因为它无法访问该磁盘。

您提供的图像路径必须是完全限定的URL,例如http://www.example.com/images/image.png

它在本地工作,因为您与映像所在的计算机位于同一台计算机上,因此它恰好可以访问该路径,但是并非所有使用该路径的人都如此。

或者,如果图像不是太大,则可以将其转换为base64并将其嵌入到电子邮件的HTML中。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

WCF XML 信息未显示在实时服务器上

背景图像显示在实时服务器上,而不显示在Github Pages上

实时服务器显示404错误,但在本地Codeigniter 3上未显示

WordPress从本地主机迁移到实时服务器后,图像未显示错误

服务器未显示图像

自定义 404 未显示在实时服务器上的 Codeigniter 中

自定义警报标记助手未显示在实时服务器上

为什么使用Retrofit Multipart上传图像时服务器上未显示图像?

C Web 服务器,图像未显示在浏览器上?

如何在服务器上显示实时JSON数据

来自S3存储桶的图像未显示在服务器上

django-heroku服务器上未显示图像(媒体)

图像未加载到实时服务器中,该服务器在本地服务器上运行良好

BeanStalk服务器中未显示图像

JSON文件未显示在Godaddy服务器上

Django:部署服务器上未显示静态文件

反应组件未显示在服务器上

从服务器下载图像以显示在CollectionView上

Laravel在生产服务器上不显示图像

使用PHP显示服务器上存在的图像

从服务器上的PHP在我的网站上显示图像

实时服务器上的邮件问题

在服务器上实时更改按钮?

jekyll帖子显示在本地服务器上,但未实时显示

css 背景图像未在 chrome 中显示,但在 atom 实时服务器上工作

我在使用laravel的实时服务器上的图像文件夹目录有问题

Laravel应用程序在实时服务器上仅显示白页

在实时服务器上上传文件时如何显示“维护中的站点”消息?

如何在 Nodejs 上显示实时服务器日期和时间