IIS ApplicationPoolIdentity에 'Temporary ASP'에 대한 쓰기 권한이 없습니다.NET 파일'
'ApplicationPoolIdentity'를 사용하는 'SomeAppPool'이라는 'AppPool'에서 웹 사이트를 시작하려고 하는데 웹 사이트를 시작할 때 다음 오류가 발생합니다.
현재 ID(IIS_APPPOOL\SomeAppPool)에 'c:\'에 대한 쓰기 액세스 권한이 없습니다.WINDOWS\Microsoft.NET 프레임워크\v4.0.30319\임시 ASP.NET 파일'
Windows 8에서 Visual Studio 2012(디버거가 연결되지 않음) 내에서 '로컬 IIS 웹 서버 사용' 웹 사이트를 시작합니다.
제가 가장 먼저 깨달은 것은 '임시 ASP'입니다.NET Files' 폴더가 존재하지 않으므로 보안 권한을 설정할 수 없습니다.
두 번째 문제는 폴더가 있더라도 어떤 권한을 설정해야 합니까?저는 'ApplicationPoolIdentity'를 통해 생성된 각 사용자에 대한 권한을 설정할 필요가 없다고 생각합니다.그렇죠?
제가 본 현재 솔루션은 단순히 사용자를 '네트워크 서비스'로 설정하는 것을 제안하지만, 이는 'ApplicationPoolIdentity'가 도입된 웹 사이트의 고립을 깨는 것 같습니다.
이 ASP.스레드에서 인정받지 못한 NET 포럼 답변이 저에게 해결책이었습니다.또한 IIS를 다시 등록하거나 사용자에게 위험한 권한을 부여하지 않기 때문에 영향이 적습니다.답을 요약하면 다음과 같습니다.
- 관리자로 명령 창을 엽니다([시작] / [프로그램] / [보조프로그램]을 클릭한 후 [명령 프롬프트]를 마우스 오른쪽 단추로 클릭한 후 "관리자로 실행"을 선택합니다).
다음 명령을 입력합니다.
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Aspnet_regiis.exe -ga domain\user
를 도인및대체자로 합니다.domain\user
전부였습니다그게 전부였어요.
Asnet_regis에 대한 Microsoft 설명서입니다.exe 여기 있습니다.다음에 대한 설명서에 유의하십시오.-ga
switch는 3.5 이전 버전의 버그로, 로컬 계정에서는 작동하지 않습니다.내가 올바르게 읽고 있다면, 도메인 계정은 모든 버전에서 지원되고 로컬 계정은 Framework 4.0부터 지원됩니다.
2017년 6월 6일 업데이트: Windows 8 이상의 경우dism
대신 명령합니다.이 SO 답변에서 다룹니다.이것을 제안해준 @codebrain에게 감사드립니다.
2015년 7월 7일 업데이트: @Vertigo는 이 대답이 또한 효과가 있었다고 친절하게 논평했습니다.NETWORK SERVICE
2008R22.0, 4 계정에 사항이일 수 있습니다. 2008R2/2012, NET 2.0, 4.0 및 4.0의 고지 사항입니다.
다른 사용자가 의 로컬 계정에서 이 기능이 작동하는 것을 발견한 경우.NET 3.5 또는 그 이전 버전에서는 제 답변을 자유롭게 편집하거나 댓글에 적어주시면 같은 문제를 경험할 수 있는 다른 사람들에게 큰 도움이 될 것입니다.
저도 같은 문제에 직면했습니다.는 경로를 했습니다.c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\
를 Temporary ASP.NET Files
하지만 이 이름의 폴더는 없었습니다.그래서 수동으로 새 폴더를 만들고 이름을 지정했습니다.Temporary ASP.NET Files
그리고 문제가 해결되었습니다.
따라서 언급된 경로가 존재하는지 확인합니다.
업데이트된 솔루션과 함께 디스크 공간을 확인하고 사용 가능한 디스크 공간이 충분한지 확인하십시오.
방금 프로덕션 서버 중 하나에서 이 문제를 발견했는데 디스크 공간 부족과 관련이 있었습니다.
응용 프로그램 풀에서 사용하는 사용자를 IIS_에 추가하여 오류를 해결했습니다.IUSRS 그룹.
현재는 2021년이지만 Windows Server 2019에서도 이 문제가 발생했습니다.
오류가 의 소지가 있었습니다.에게 "ApplicationPool-Identity"에 부여Temporary ASP.NET Files
작동하지 않았고 실제 문제가 아니었습니다.
서버 후,Users
(는) 의임 수폴수 할 수 .C:\Windows directory
제언.에서 임시 써야 , 합니다.NET에서 임시 파일을 임시 폴더에 써야 합니다. 쓰기 권한이 없기 때문에 예외가 발생합니다.
의 할당modify
에 대한 사용 권한. 권한에 대한 .Users
C:\Windows
디렉토리가 저에게 도움이 되었습니다.
에안있것는에 것.C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319
실행해 보다aspnet_regiis.exe
command
일반적으로 권한을 설정해야 합니다.Windows 프로그램 추가/제거가 발생한 경우 또는 새로 발생한 경우.NET 버전이 설치되고, 이러한 것들이 약간 재설정됩니다.» aspnet_regiis.exe
거기에 도움이 될 것입니다.
또한 Visual Studio를 관리자로 실행 중인지 확인합니다.
저는 이것을 우연히 만났고 제가 한 일은 "Webby"라고 하는 새로운 계정을 만드는 것이었습니다.
ISS에서 페이지의 고급 설정으로 이동한 후 "물리적 경로 자격 증명"을 Webby 계정으로 변경합니다.웹 페이지 디렉토리가 있는 위의 경로 필드. 탐색기에서 이 폴더를 열고 수정 권한으로 웹비를 추가합니다."Failed Request Tracing" 아래에 로그 디렉토리가 있습니다. 여기에 수정을 추가하고 "Enabled"를 true로 설정합니다(나중에 해제할 수 있지만 작동하는지 확인).이 시점에서 사이트를 시도할 수 있으며 사용 중인 사용자 때문에 오류 메시지가 표시됩니다.
현재 ID(YOUR\Webby)에 'C:'에 대한 쓰기 액세스 권한이 없습니다.\Windows\Microsoft.NET\Framework64\v4.0.30319\임시 ASP.NET 파일'입니다.
이제 문제를 해결하려면 'C:\Windows\Microsoft.NET\Framework64\v4.0.30319\임시 ASP.NET Files의 디렉터리와 여기에 Webby를 추가하면 다시 Modify가 작동합니다.
웹사이트에만 특별한 계정을 사용하는 해결책은 좋은 생각입니다.이 계정은 실제 계정이며(ApplicationPool과 같은 가상 계정이 아님) Windows가 혼동하지 않습니다(...쉽게).
이게 도움이 되길 바랍니다.
IIS7에서 가상 디렉터리를 마우스 오른쪽 버튼으로 클릭하고 응용 프로그램을 제거한 후 다시 추가했습니다.그것이 저를 위해 고쳐주었습니다.
디스크 공간을 확보하여 해결했습니다.
저는 이 문제를 겪었고, 그것을 해결할 수 있습니다.C:\Windows\Microsoft 폴더에 대한 사용 권한만 부여하면 됩니다.NET\Framework64\v4.0.30319\임시 ASP.현재 사용자의 NET 파일입니다.쉬워요.
행운을 빌어요!!
언급URL : https://stackoverflow.com/questions/22756037/iis-applicationpoolidentity-does-not-have-write-permission-to-temporary-asp-net
'programing' 카테고리의 다른 글
Angular 5, HTML, boolean on 확인란이 선택되어 있습니다. (0) | 2023.09.02 |
---|---|
Java EE 웹 앱에서 Windows 인증을 사용하여 SQL Server에 연결할 수 있습니까? (0) | 2023.09.02 |
Ajax 응답 200 정상이지만 응답 데이터를 로드하지 못한 것으로 표시됩니다. (0) | 2023.09.02 |
데이터베이스에 열을 추가할 때 오류 발생 (0) | 2023.09.02 |
테스트를 위해 Forge 서버에 두 번째 Maria DB를 생성하시겠습니까? (0) | 2023.09.02 |