ASP.NET MVC子域应用无法显示主域根目录图片求助
解决子域ASP.NET MVC应用访问主域根目录图片的问题
方法1:直接使用绝对URL引用
跳过Url.Content的路径解析,直接在img标签里写主域的完整图片地址,这样不会被导向子域的目录:
<img src="https://domain.com/images/8_Race_Logo.jpg" style="width:100px; height:auto;" alt="This is an image" />
方法2:通过配置文件动态获取主域地址(更灵活)
如果不想硬编码域名,可在appsettings.json中添加主域配置:
{ "MainDomain": "https://domain.com" }
然后在cshtml中读取配置并拼接图片路径:
@inject IConfiguration Configuration @{ string mainDomain = Configuration["MainDomain"]; string imagePath = $"{mainDomain}/images/8_Race_Logo.jpg"; } <img src="@imagePath" style="width:100px; height:auto;" alt="This is an image" />
原方法失效的原因
Url.Content("~/../images/...")会被ASP.NET MVC解析为当前子域应用根目录的相对路径,子域应用的根目录是domain.com/subdomain/,所以解析后依然指向子域下的路径,无法跳转到主域根目录。
内容的提问来源于stack exchange,提问作者Charlie
相关产品推荐
相关产品推荐

