용량 최적화 작업 리뷰 : 홈페이지 드라이브 업로드 파일 옮기기 최적화 시도 테스트 현황
ㄴ 이 부분은 제가 좀 더 파일 잘못된거 없는지 분석해보겠습니다.
모듈 소개 : 첨부파일 외부 저장소 이동
========================= 패치 계획 ======================
일단 로컬사용자 기준으로
드라이브 추가 , 용량 표시,
1순위 드라이브 용량 가득찼을때 2순위 드라이브에 저장
기존 1순위 드라이브에 있는 파일은 그대로 두기
도중에 2순위 드라이브로 저장하기
1순위 드라이브에 용량을 일정량을 지나면 자동으로 2순위 드라이브에 저장되게 하기
1. 로컬 사용자도 쓰고 복수 선택으로 s3 도 ftp도 가능하면 좋을뜻 합니다.
2. 저장 순위 설정 로컬 > s3 > FTP
3. S3 설정 https://dash.cloudflare.com/ 클라우드 서비스 사용 가능 FTP 도 완료
FTP 공개 URL 기능 추가
4. 게시판별 첨부파일 선택적 업로드?
ㄴ게시판마다 어디에 업로드 할지
ㄴ 기본은 1순위에 저장
5. 데이터 이전 기능
ㄴ 한곳에 합칠때 (저장소 변경)
6. S3 와 FTP 를 추가 설정 기능
ㄴ S3를 이용하는데 용량이 꽉차서 다른 S3를 추가할때 사용
ㄴFTP 도 다른 서버를 추가 할때
7. SSH/SFTP 추가
ㄴ
1) 선택값 유지 — "지금 통합 실행" 누르고 30~150건 처리되고 나면, 방금 고른 목표 저장소/로컬 경로/대상 게시판이 화면에 그대로 남아있어요. 이제 남은 항목 처리하려고 버튼 누를 때 매번 다시 고르실 필요 없습니다.
2) 레거시 파일 한도 확대 — 이미 이동된 파일(다운로드+업로드 왕복이라 무거움)은 그대로 30건 유지하고, 레거시 파일(로컬 원본 한 번만 올리면 끝)은 150건으로 늘렸어요. 게시물 많은 사이트에서 클릭 횟수 확 줄어들 거예요. (폴더 통째 복사는 매핑 기록이 안 남아서 위험하다고 말씀드렸던 대로 이 방식으로 대신했습니다)
3) 대상 게시판 다중 선택 — 이제 Ctrl/Cmd+클릭으로 게시판 여러 개 한 번에 선택해서 통합 실행 가능해요.
4) 게시판별 저장소 "변경" 버튼 — [저장소 지정] 탭에서 이미 지정된 게시판도 삭제 후 재추가 안 하고 바로 드롭다운으로 저장소 바꿔서 "변경" 누르면 됩니다.
8. 썸네일 페이지가 2번째부터 안되던 문제 수정
========= 완료 ==========
======== 미완료 =========
9. SFTP/SSH 이것도 지금은 하나 밖에 없는데요? 2개 더 추가 할까요?
검토를 지속적으로 하여 보안 패치중입니다.
================== 아직 확인 안 된 사항 =================
================= 최신 버전 미리보기==================
v2.0.0 까지의 기능 미리보기
================= 1.7.2 버전 미리보기 ==================



댓글 8
3계층의 저장소라니.. 획기적인 아이디어 이군요.
그리고, ftp 설정의 경우에도, 공개 URL 옵션이 있어야 할 것 같아요.
공개 URL 이 왜 필요한건가요? 잘 몰라서요
있으면 좋지 않을까요
https://bsplus.net/xe/free_board/17614
제가 어제 여기글에 댓글에 ftp 업로드 테스트 했거든요??
그럼 이게 공개 FTP 기능이 되는거 아닌가요??
아니면 별도의 ftp 에 올려놓은게 별도 기능으로 URL 이 연결 되어야 하는건가요?
근데 라이믹스에서는 xe/파일 그쪽이 전부 URL이 비공개 처리 되어 있으니까요?
FTP에 올린 저 부분도 공개가 원래는 되면 안되는거잖아요??
제가 잘몰라서요 ㅎㅎㅎ;;
1. 나만 필요한 기능이 아니기 때문에 넣어줘야 될꺼 같아 남들은 필요로 하는 기능인거
같아서..
1번에 대한 내용이 이거였습니다.
> 1번 ftp 공개 말야.. 내가 어제 테스트 했을때 사진이 분명 떳잖아? 그럼 되는거 아니였나?
좋은 질문이에요, 헷갈리실 수 있는 부분이라 정리해드릴게요.
어제 FTP 이미지가 잘 뜬 건 이미 정상 동작하고 있던 기능입니다 — "공개 URL"과는 무관해요. 지금까지 FTP는 파일 요청이 오면 저희 모듈이 PHP로 직접 FTP 서버에서 파일을 읽어와서 그대로 브라우저에 전달하는 방식으로 처음부터 잘 동작하고 있었습니다 (S3만 이 부분이 빠져있어서 어제 그 버그를 고친 거고요, FTP는 원래 문제 없었습니다).
지금 만들고 있는 "FTP 공개 URL"은 **버그 수정이 아니라 추가 선택사항(최적화)**입니다:
- 지금 방식(PHP 스트리밍): 파일 요청 → 서버가 FTP에서 받아옴 → 브라우저에 전달. 항상 되지만 서버가 한 단계 더 거쳐야 함
- 공개 URL 방식: 그 FTP 서버가 동시에 일반 웹사이트로도 그 폴더를 보여주고 있다면(예: 저가형 호스팅 특성), 아예 브라우저가 FTP 서버 주소로 직행 → 서버 부담 줄고 더 빠름
즉 "공개 URL"은 특정 호스팅 조건에서 속도를 더 빠르게 해주는 옵션이지, 없어도 지금처럼 잘 동작합니다. 계속 만들어드릴까요, 아니면 지금 방식으로 충분하니 스킵할까요?
✻ Sautéed for 1m 23s
> 한가지만 더 라이믹스에서 파일 폴더 경로는 전부 진입을 못하게 막는 보안 사항이잖아? 근데 ftp 쪽도 그 파일 폴더랑 같은건데 그걸 공개 URL 하는게 오히려 독은 아닌거지?
정확히 맞는 지적입니다. "공개 URL"은 S3든 FTP든 똑같은 위험을 가지고 있어요 — 브라우저가 저희 PHP 코드를 아예 안 거치고 그 서버로 직행하니까, 지금까지 만들어둔 권한 체크(FileModel::isDownloadable(), 게시글/댓글 읽기 권한 확인)가 전부 무력화됩니다. 비공개 게시판이나 회원전용 첨부파일도 그 URL만 알면(또는 추측하면) 누구나 열람 가능해집니다.
그래서 이건 "FTP라서" 위험한 게 아니라 **"PHP를 건너뛰는 방식은 전부 다 이 위험을 갖고 있다"**는 게 맞습니다. S3 쪽 공개 URL에도 이미 같은 경고문구를 넣어뒀는데, FTP에도 똑같이 넣겠습니다.
실제로 독이 되는지 안 되는지는 상황에 따라 다릅니다:
- 사이트에 있는 게시판들이 전부 완전 공개(비밀글/회원전용 없음)라면 → 어차피 다 볼 수 있던 파일이라 큰 의미 없음
- 비밀글, 회원전용, 등급별 열람제한 게시판이 하나라도 있다면 → 그 게시판 첨부파일까지 전부 이 구멍으로 새어나갈 수 있음 (주의 필요)
아까 말씀하신 "게시판별 저장소 지정" 기능이 만들어지면, "완전 공개 게시판만 공개URL 쓰고, 나머지는 PHP 스트리밍 수 있어서 두 기능이 자연스럽게 연결됩니다.
일단 경고 문구부터 넣고 계속
✻ Crunched for 29s
> 일단 원래 하던데로 진행 계속
제가 잘 몰라서 클로드랑 말해본 내용입니다 ..
그게 별개 문제인지 잘 모르겠어요 ㅎㅎ
클로드의 설명은 정확합니다.
이 모듈의 역할은 첨부파일이 외부 저장소를 사용할 수 있게 하는 것이지, 파일의 접근 권한을 검사하는 것은 모듈에서 설명하는 역할 범위를 벗어납니다. NAS / 웹호스팅 / CDN호스팅을 포함한 대부분의 실제 경우에서, ftp와 http는 함께 제공됩니다.(이것은 S3, R2도 포함입니다). 일반적인 커뮤니티 사이트에서, 공개url 방식을 사용할 때 얻는 이득이 더 큽니다.
- 더 자세한 설명은 클로드가 해줄거에요
개인적으로 대용량만 따로 저장소 서버로 연결해서 사용하는데, 이건 어우.. 여러개네요ㅋㅋㅋ
ㅎㅎㅎ 웹호스팅 사용자 입장에서 생각하며 만들었습니다 저는 로컬 사용자 이지만요