本地运行没问题,部署到IIS后,部分接口报404,其它接口都正常。
经和群里讨论,大概意思是接口返回数据比较大的时候,就会出现这个问题。
查看事件查看器,发现应该是数据过大时使用了临时文件夹,又没有权限导致的报错。
Category:
Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware EventId: 1 SpanId: ef29f12c55c895b1 TraceId: 8d879f120f349d768a30514a523cc2c2 ParentId: 0000000000000000 RequestId: 40000045-0000-f700-b63f-84710c7967bb
RequestPath: /Api/SysMenu/GetPageList
An unhandled exception has occurred while executing the request.
Exception: System.UnauthorizedAccessException:
Access to the path 'C:\Windows\TEMP\ASPNETCORE_001e2d97-f9a6-44df-8e81-c1c4965091ef.tmp' is denied. at
Microsoft.Win32.SafeHandles.SafeFileHandle.CreateFile(String fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options) at
解决方案:
把IIS_IUSER用户加入到C:\windows\TEMP目录中完全权限。
或参考以下:
https://blog.csdn.net/m0_46531302/article/details/132962973