首页 新闻 会员 周边 捐助

DotNetCore编译后 路径被固定

0
[已解决问题] 解决于 2019-09-19 09:15

做了一个DotNet Core的MVC项目,里面采用了IdentityServer4。

初始化的时候需要一个证书。

services.AddIdentityServer()
                .AddSigningCredential(new X509Certificate2("test.pfx", "test"))
                .AddInMemoryIdentityResources(Configuration.IdentityResources)
                .AddTestUsers(Configuration.Users)
                .AddInMemoryClients(Configuration.Clients)
              .AddInMemoryApiResources(Configuration.ApiResources());    

暂时把证书放在了项目根目录下。

 

本地测试正常。打算发布到一个Server 2012 的服务器上(虚拟机)。

发布以后报错,说是找不到证书的文件。

我的本机的项目是在D:/MvcTest里,

但是虚拟机里发布在C:/Website里。

开始日志里显示的还是找不到“D:/MvcTest/test.pfx”找不到。

这到底是为什么?已经发布到虚拟机里了,为什么还是在找我的开发环境里的地址?这个地址不应该是计算出来的么?

写代码的相声演员的主页 写代码的相声演员 | 小虾三级 | 园豆:517
提问于:2018-03-14 17:33
< >
分享
最佳答案
1

使用 Path.GetFullPath 试试

.AddSigningCredential(new X509Certificate2(Path.GetFullPath("test.pfx"), "test"))
奖励园豆:5
dudu | 高人七级 |园豆:30144 | 2018-03-14 20:57
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册