2014-01-16 3 views
19

최근에 유성 개인 서브 디렉토리를 인식하게되었습니다. 문서에 따르면 : "개인 하위 디렉토리는 서버 코드에 액세스 할 수 있어야하지만 개인 데이터 파일과 같이 클라이언트에 제공되지 않는 모든 파일을위한 장소입니다." 나는 웹 개발 일반에서 초보자이다. 그래서 나의 질문은 개인 서브 디렉토리 내에서 이러한 파일을 갖는 것과 서버 서브 디렉토리 그 자체에서 얻는 이점이다. 서버 하위 디렉토리가 비공개가 아닙니다 (예 : 일부 전자 메일 템플릿이 정의되어 있고 전자 메일 로그인 정보가 서버 하위 디렉터리의 시작 기능에 설정되어 있습니다. 클라이언트에 이러한 정보가 노출되어 있습니까? 어떤 설명이 도움이 될 것입니다, 감사합니다!유성 개인 서브 디렉토리

답변

33

아니요, 서버 디렉토리의 코드가 안전합니다. 차이점은 파일 사용/액세스 방법에 있습니다. 서버 디렉토리의 파일은 서버에로드/실행되며 실행중인 응용 프로그램의 파일 시스템을 사용하여 액세스하기가 어려울 수도 있습니다. private 디렉토리의 파일 콘텐츠는 자산으로 제공됩니다. 자세한 내용은 http://docs.meteor.com/#assets을 참조하십시오.

주목할 점은 서버 코드가 서버 디렉토리에서 실행되지 않지만 .meteor 내의 임시 빌드 디렉토리 인 현재 작업 디렉토리가 있다는 것입니다. 예를 들어 fs 노드 패키지를 사용하여 서버 디렉토리의 파일을 읽으려면 먼저 해당 패키지를 찾아야합니다. 또한 서버 디렉토리의 새로운 파일이나 파일 변경으로 유적이 발생하여 앱이 다시 시작됩니다. 당신이 원하지 않는 시나리오가 있습니다. 따라서 private은 앱 실행에 영향을 미치지 않는 파일을 처리 할 수있는 공간을 제공합니다.

또 다른 방법은 private은 서버를위한 것이고 public은 클라이언트 용입니다.

+0

정보를 제공해 주셔서 감사합니다. – user2635787

+0

서버 측 방법 (및 fs 노드 패키지)을 사용하여 디렉토리를 작성하거나 'private'디렉토리 아래에 파일을 추가 할 때 (예 : application-name/private/files/users/user-name/file.pdf) , 내 응용 프로그램은 항상 다시 시작 - 나는 이것이 '개인'디렉토리에서 일어날 줄 알았는데 생각? – Aaron

+0

여기 내 문제는이 문제에 대한 : http://stackoverflow.com/questions/28105957/meteor-and-the-private-directory?noredirect=1#comment44597955_28105957 – Aaron