发布到IIS后,.net无法读取pem文件

时间:2017-02-16 09:08:57

标签: c# asp.net iis pem

我有一个MVC Web应用程序,它读取.pem文件以进行加密。在IIS Express中,我将.pem文件复制到IIS Express文件夹中,我可以像

那样使用它
RSA rsa = RSA.FromPublicKey(BIO.File("./RSAKeys/TestPublic.pem", "r"));

当我在IIS上发布项目时,上面的代码给出了错误:

错误:02001003:系统库:fopen:没有这样的过程 错误:2006D080:BIO例程:BIO_new_file:没有这样的文件

我将RSAKeys文件夹复制到bin文件夹和项目的根文件夹中。

我无法克服这个错误。我该怎么办?

感谢。

1 个答案:

答案 0 :(得分:0)

MapPath方法将指定的相对或虚拟路径映射到服务器上的相应物理目录。

RSA rsa = RSA.FromPublicKey(BIO.File(System.Web.HttpContext.Current.Server.MapPath("~/RSAKeys/TestPublic.pem"), "r"));