사용자에게 고유한 파일의 해시된 저장소에서 선택한 파일에 대한 FTP 액세스 제공

사용자에게 고유한 파일의 해시된 저장소에서 선택한 파일에 대한 FTP 액세스 제공

우리에게는 포털이 있고 각 사용자에게는 계정과 그에 따른 파일 저장소가 있습니다.

사용자가 양식을 사용하여 파일을 업로드할 때마다 PHP 애플리케이션은 먼저 파일 내용을 해시하고 해당 파일이 시스템에 이미 존재하는지 확인합니다(다른 사용자가 업로드한 경우에도 마찬가지).

파일이 존재하는 경우 새 파일은 저장되지 않고 대신 시스템은 업로드하는 사용자의 세부 정보와 원본 파일에 대한 링크가 포함된 줄만 저장합니다. 이 방법은 파일 중복을 제거하고 공간을 절약합니다.

그러나 이제 문제가 생겼습니다. 각 사용자는 자신의 저장소 파일을 다운로드하는 데 사용할 수 있는 ftp 계정도 갖게 됩니다.

고유한 파일만 저장되므로 각 사용자에게 저장소에 있는 모든 파일을 표시할 수 있는 방법이 필요합니다.

단순한 ftp 폴더가 아니기 때문에 수정이 필요합니다.

우리는 심볼릭 링크와 파일 마운트를 보았습니다. 전자는 권한에 따라 액세스를 차단하는 반면 후자는 런타임에 수천 개의 파일을 개별적으로 마운트해야 하기 때문에 둘 다 비실용적입니다.

답변1

  1. 사용자가 소유자를 알지 못하도록 공개 파일을 저장합니다. (일부 admin사용자).
  2. 일반 파일을 다운로드할 경우 userA파일의 소유권을 에서 로 변경 admin하세요 userA. 이렇게 하면 userA그가 파일의 소유자라고 가정됩니다.
  3. admin파일을 다운로드한 후 사용자 에게 파일 권한을 복원합니다 .

관련 정보