Clarify storage limits and unify file metadata displays
This commit is contained in:
10
README.md
10
README.md
@@ -81,7 +81,7 @@ NAS 파일은 `/volume1/docker/projects/apps/hop/uploads/originals` 안에서 **
|
||||
|
||||
이메일 인증을 완료한 **hello@noname.company** 계정으로 로그인하면 **더보기 → 관리자**가 표시됩니다. 서버도 매 요청에서 동일 계정의 인증·활성 상태를 확인합니다. 다른 계정이나 이메일 로컬 파트의 대소문자가 다른 계정에는 권한을 주지 않습니다.
|
||||
|
||||
저장 파일·업로드 주체·최근 접속 지역/IP·남은 디스크와 진행 중 업로드를 확인하고, 확인 후 원본을 삭제할 수 있습니다. 삭제하면 같은 원본을 참조하는 모든 보관함 항목도 무효화됩니다. 파일 내용 다운로드 기능은 제공하지 않습니다. 화면은 새로고침할 때 갱신하며 지속적인 폴링은 하지 않습니다.
|
||||
저장 파일·업로드 주체·파일별 전송 요청 시점의 접속 지역/IP·남은 디스크와 진행 중 업로드를 확인하고, 확인 후 원본을 삭제할 수 있습니다. 삭제하면 같은 원본을 참조하는 모든 보관함 항목도 무효화됩니다. 파일 내용 다운로드 기능은 제공하지 않습니다. 화면은 새로고침할 때 갱신하며 지속적인 폴링은 하지 않습니다.
|
||||
|
||||
관리자는 신규 파일 업로드 중지/재개, 동시 업로드 수와 전체 파일 저장 한도, 국가 코드 및 IP/CIDR 차단을 설정할 수 있습니다. 기본값은 **동시 4개·전체 20GiB·차단 없음**입니다. 개인/기기별 한도와 최소 디스크 여유 공간은 함께 적용합니다. 중지 전에 수락한 전송·기존 다운로드·링크/텍스트는 유지합니다. 전체 한도를 줄여도 기존 파일은 삭제하지 않습니다.
|
||||
|
||||
@@ -124,3 +124,11 @@ NAS 파일은 `/volume1/docker/projects/apps/hop/uploads/originals` 안에서 **
|
||||
기기 이름은 서버 DB에 저장되며 동일 브라우저의 기기 세션 쿠키가 유효한 동안 유지됩니다. 쿠키를 지우거나 다른 브라우저로 접속하면 새 기기로 인식됩니다.
|
||||
|
||||
전송 제한의 기본값은 상대 10회·기기 세션 30회·같은 IP 전체 120회/분입니다. 거절 후 5분 대기는 유지하며 전송 버튼에 재시도까지 남은 초를 표시합니다. 기존 NAS `.env` 한도 변경은 [deploy.md](deploy.md)의 전송 요청 제한 안내를 따릅니다. 수신 요청은 파일·링크·텍스트 아이콘과 제목으로 구분하며 차단은 확인 후 실행합니다. 푸터의 내 기기 설정에서 차단한 기기를 관리·해제할 수 있습니다. `npm run test:e2e:receive`로 새 수신·제한·차단 흐름을 검증합니다.
|
||||
|
||||
## 관리자 정보와 용량 표시
|
||||
|
||||
업로드 주체 이름은 `[iPhone]`처럼 대괄호로 구분하고 관리자·보관함의 만료일은 `[보관 만료] 2026년 10월 22일 11:02 까지`처럼 한국 시간의 연도·24시간으로 표시합니다. 푸터의 발견 허용/꺼짐 문구는 숨깁니다.
|
||||
|
||||
전송·수신·보관함·관리자 화면은 같은 용량 표시 함수를 사용합니다. 1MB 미만은 KB, 1MB 이상은 MB, 1GB 이상은 GB이며 KB/MB/GB는 1,000 단위입니다. 예: `938KB`, `1.1MB`, `1.7GB`. 기존 서버 저장 한도와 환경변수의 MiB 기준은 유지합니다. 관리자 화면의 GB 설정을 바꾸지 않고 다른 규칙만 저장할 때는 반올림된 표시값 때문에 기존 용량이 바뀌지 않습니다.
|
||||
|
||||
파일별 접속 정보는 DB에 최초 전송 요청 당시의 값을 저장하여 이후 같은 사람이 다른 지역에서 전송해도 바뀌지 않습니다. 같은 요청의 여러 파일은 같은 요청 당시 정보를 사용하며 원본 재전송은 원래 정보를 유지합니다. 기본 최대 7일 보관하고 실패·삭제한 파일의 기록은 주기 정리합니다. 기존 파일은 `owner-info.json`에 동일한 요청의 기록이 있을 때만 복원하고, 없으면 다른 파일의 최근 정보로 추정하지 않습니다. 파일 내용·GPS 좌표를 추가로 수집하지 않으며 관리자 외에는 제공하지 않습니다.
|
||||
|
||||
Reference in New Issue
Block a user