【发布时间】:2015-10-14 11:28:53
【问题描述】:
我刚刚注册了 AWS 服务(微型,免费)并尝试部署 asp.net mvc 4 应用程序。 一切正常,Web 应用程序已部署并正在运行(Web 部件、数据库等),但是当我尝试写入文件系统时(例如,当我保存文件时),我遇到了一个异常
System.UnauthorizedAccessException:访问路径 'C:\inetpub\wwwroot.logs\xxx.log
文件夹“C:\inetpub\wwwroot\.logs”存在。
我尝试使用命令向 DefaultAppPool 授予文件夹权限。 我有以下网络项目结构:
- 网络主机
- .ebextensions
- aws.config
- .ebextensions
aws.cofig 有以下内容:
container_commands:
01-logscreate:
command: "mkdir C:\inetpub\wwwroot\.logs > create-logs.log"
cwd: "C:/inetpub/wwwroot/.ebextensions"
01-logspermission:
command: "icacls \"C:/inetpub/wwwroot/.logs\" /grant DefaultAppPool:(OI) (CI) > p-logs.log"
cwd: "C:/inetpub/wwwroot/.ebextensions"
当我访问文件时,我使用解析完整路径
HostingEnvironment.MapPath("~/.logs/xxx.log")
但是当我试图写入这个文件时,得到一个异常。
部署包中'.ebextensions'的相对路径是
Content\D_C.git\udsmonitoring.app\WebHost\obj\Debug\Package\PackageTmp\.ebextensions
提前感谢
【问题讨论】:
标签: c# asp.net amazon-web-services amazon-elastic-beanstalk