2012-02-23 2 views
1

방금 ​​Go Daddy에 내 사이트를 업로드했고 사용자가 내 사이트에 계정을 만들 때 사용자 ID를 기반으로 디렉토리를 동적으로 만드는 코드가 있습니다. 디렉토리를 만들지 않아 어떤 방법으로 권한을 설정해야한다고 가정하지만 내 사이트가 호스팅 된 이후로 IIS에 대한 제어권이 없습니다. 프로그래밍 방식으로 권한을 설정하려면 어떻게해야합니까? 당신이 경로 변수가웹 사이트에 새로운 사용자를위한 디렉토리를 만듭니다.

if(Directory.Exists(path)) 
       return true; 

try 
{ 
    Directory.CreateDirectory(path); 
} 
+0

예외 처리기는 무엇을 수행합니까? (당신은 예외 처리기를 가지고 있습니까?). CreateDirectory가 실패하면 예외 메시지가 나타납니다. –

+0

@Steve 처리기가 괄호 안에있는 것 같아요. (* 맛있는 예외 *) –

답변

3

웹 사이트에 제공된 루트 웹 디렉토리에서만 파일/하위 디렉토리를 만들 수 있습니다. GoDaddy는 디렉토리에서 권한을 설정할 수있는 제어판을 사용하여 로그인을 제공했을 수 있습니다. 계정 목록 호스팅에

  1. 로그인 사용자 이름/계좌 번호와 비밀번호
  2. 클릭을 사용하여 내 계정
  3. 클릭에 : 다음은 GoDaddy와 계정에 대한 사용 권한을 설정하는 과정입니다
  4. 열기 (열려고하는 웹 호스팅 패키지)
  5. 콘텐츠로 스크롤하여 파일 관리자를 클릭하십시오.
  6. 도메인 폴더를 선택하십시오. 권한을 설정하고 상단 컨트롤 막대의 권한 버튼을 클릭하십시오.
  7. 필요한 권한을 설정하고 확인을 클릭하십시오.
+0

네. 나는 그것에 대해 생각 했어야했다! 감사. –

+0

도메인 (Plesk)의 호스팅 계정에 들어가서 가상 디렉터리 아래에서 사용 권한을 변경해야했습니다. '가상 디렉토리 '아래에있는'디렉토리 접근 권한'을 사용하십시오. – TheMiddleMan

0

, 당신은 시도가 :

if(Directory.Exists(Server.MapPath(path))) 
    return true; 

try 
{ 
    Directory.CreateDirectory(Server.MapPath(path)); 
} 

경로의 형식은 무엇입니까?

+0

서버에 만든 사람이라는 디렉토리가 있습니다. 따라서 메서드에 매개 변수로 경로를 전달하면 이미 Server.MapPath ("people")라고 불렀습니다. 디렉터리에 대한 사용 권한 문제 일 수도 있습니다. –

0

Server.MapPath Method을 사용하여 실제 디렉토리 경로를 매핑해야합니다. 당신이 당신의 웹 사이트 virtual directory 폴더 외부의 디렉토리 나 파일을 만들 수있는 웹 서버에서

string directoryPath = Server.MapPath(path);  

if(Directory.Exists(directoryPath)) 
      return true; 

try 
{ 
    Directory.CreateDirectory(directoryPath); 
} 

.

+0

서버에 만든 people이라는 디렉터리가 있으므로 메서드에 매개 변수로 path를 전달할 때 이미 Server.MapPath ("people")를 호출했습니다. 디렉터리에 대한 사용 권한 문제 일 수도 있습니다. –

관련 문제