我正在尝试打开证书文件:
//path to file
static string KKBpfxFile =
Path.Combine(HostingEnvironment.ApplicationPhysicalPath,
ConfigurationManager.AppSettings["CertFolder"],
"cert.pfx");
_logger.Debug(KKBpfxFile);
X509Certificate2 KKbCert = new X509Certificate2(KKBpfxFile, KKBpfxPass);
但是,我找不到异常文件。在日志文件中包含以下路径:
C:\的Inetpub \ wwwroot的\ msite \证书\ cert.pfx
我在资源管理器中打开此路径,一切正常。该文件存在。
哪里有问题?
PS。我将此文件夹的所有(读取,写入和其他)权限授予ALL
组
PS2。这只是生产服务器上的问题。在我的本地机器上工作。
答案 0 :(得分:1)
尝试在调用构造函数之前进行File.Exists()
检查。
此外,访问权限仍然存在问题,具体取决于运行应用程序池的用户,但如果您将访问权限设置为“Everyone”,则应该可以使用。仍然......仔细检查生产服务器上的内容。
另外,作为进一步的步骤,您可以检查文件的ACL,并在调用构造函数之前查看您是否具有读取权限,更进一步,将文件加载到字节数组中并使用字节数组调用构造函数ARG。
答案 1 :(得分:0)
使用procexp.exe并在exe中提供路径。我会说你哪个程序锁定了你的文件。请求程序重新启用它。不要杀死它,因为它是生产服务器。
可以在本地计算机上找到Procexp /从microsoft下载。将tat exe复制到produciton服务器并从那里运行