2010-11-27 7 views
2

레일이있는 s3의 버킷 안의 특정 폴더에 FTP 계정을 저장하는 방법이 있습니까?Rails + S3를 사용하여 FTP 계정 만들기

사용자가 ftp를 통해 파일을 일괄 처리 폴더에 업로드해야합니다. 파일은 크기가 크고 양이 많기 때문에 FTP를 통해 최상의 선택을하고 모든 웹 업로드를 피하십시오.

역할 공동 작업자가있는 사용자 모델이 있다고 가정 해 보겠습니다. 협력자 때 그는 자신의 이름 (사용자 1)의이 ftp.mysite.com을 말하고

s3.amazonaws.com/mybucket/batches/users/user1

모든 아이디어를 어떻게 가자에/비밀번호를 사용하여 로그인 할 수 있습니다 이것을 성취하기 위해서?

감사합니다.

답변

1

사용자가 FTP를 사용하고 웹 응용 프로그램을 사용하지 않으므로 Rails 웹 응용 프로그램 대신 일반 Ruby 스크립트를 구현할 수 있습니다.

  • 모든 사용자는 파일을 업로드 할 자신의 FTP 영역을 가지고 있습니다. ftp.mysite.com/user1, ftp.mysite.com/user2, ... 정기적으로
  • 스크립트 검사가 net/ftp 표준 라이브러리 어떤있을 경우
  • 를 사용하여 사용자의 FTP 폴더에 새로운 파일이 결국에 폴더를 생성, AWS::S3를 통해 S3 그래서 파일을 업로드하는 경우 S3 버킷의 일단 S3에 업로드
  • 누락하는 경우는, 파일을 FTP
  • 에서 삭제됩니다

참고 : 에버

  1. y 사용자는 자신의 FTP 폴더에만 액세스해야하며 Ruby 스크립트는 모든 FTP 폴더에 액세스해야합니다.
  2. 사용자가 FTP를 사용할 수 있다면 Amazon S3 Organizer(S3Fox), Cyberduck 또는 다른 S3 클라이언트를 사용할 수 있습니다. 버킷을 생성하면 사용자 및 폴더가 S3 ACL로 재생되어 권한을 정의합니다.
관련 문제