2011-02-14 9 views
0

저는 이미지 중 하나의 작은 하위 집합으로 이미지를 업로드 할 수있는 webapp를 만들고 있습니다. MySQL 대신 Mongo를 사용하여 램프 스택을 실행하고 있습니다.업로드 된 파일은 어디에 모두 넣어야합니까?

PHP 백엔드가있는 자바 스크립트 업 로더를 사용하여 파일을 업로드합니다. 전체 프레임 워크는 버전 관리하에 있기 때문에 버전 관리에 지저분 해지고 미디어를 CDN으로 마이그레이션 할 때 차선책으로 사용하기 때문에 이러한 프레임 워크를 프레임 워크 안의 어느 곳 으로든 덤프하고 싶지는 않습니다.

내 질문은 - VPS에서 어디에서이 이미지를 삭제해야합니까? 내 프레임 워크 외부의 일부 폴더에서? bson으로서 DB에? 나는 Mongo가 바이너리 데이터를 다루는 괜찮은 일을한다고 들었다. ...

그리고 후속으로, 내가 CDN으로 내용을 옮길 계획이라면, 지금 내 스키마를 구조화하는 것이 어떻겠습니까? ?

  1. 모든 업로드가 고유 ID와 이름을 지정하고 외부 폴더에 삭제됩니다, 종류의 세계적 접근 가능한 변수에 의해 정의 :

    나의 현재 계획은 다음과 같은 일을 할 것이다.

  2. 각 이미지의 이름에 대한 참조는 db에 저장된 입니다.

그런 식으로 진행하는 것에 대해 분명히 어리석은 것이 있습니까? 나중에 나에게 두통이 발생합니다.

리눅스, 아파치, 가장 좋은 방법은 무엇 몽고하는 VPS에서 PHP 프레임 워크, 업로드 저장하는 감안할 때 : 여기

은 너무 이것이 SO 친화적 질문에 조금 더, 요약 된 특정 질문 솔루션을 결정할 때 가장 중요한 두 가지 요인으로 확장 성 및 속도를 유지하면서 이미지를 생성합니까?
+1

대부분의 버전 컨트롤을 사용하면 폴더의 파일을 무시할 수 있습니다. – Jacob

+0

확실히,하지만 난 항상 프레임 워크 안쪽에 매우 중요하지 않은 사용자 생성 콘텐츠를 넣어 생각했습니다. 내가 틀릴 수도 있다고 생각하지만, 그렇다고해도 CDN으로 마이그레이션하거나 거대한 번거 로움을 피할 수 있습니다. – Jesse

답변

0

당신의 계획이 CDN으로 옮겨 진다면, VPS에 하위 도메인을 생성하고 그곳에 이미지를 드롭하면 답답할 수 없습니다. CDN 시뮬레이션과 안정적인 파일 저장이 가능합니다.

+0

확실히 방향입니다. 미디어를 저장하기위한 선례가 있는지 잘 모르겠습니다. – Jesse

+0

@Jesse 당신이 의미하는 바를 잘 모릅니다. 그러나 그것은 미디어를 저장하는 매우 일반적인 방법입니다. 바로이 페이지 소스를 열고 sstatic.com 도메인을 검색하십시오. –

0

나는 많은 이유로 사용자가 업로드 한 내용을 웹 응용 프로그램에 넣지 말아야한다는 데 동의하지만 그 중 하나는 webapp과 관련된 src 특성을 사용하는 HTML에 img 태그를 표시하는 방법입니다.

쉬운 해결 방법은 다음과 같습니다. 유닉스 박스에/usr/ImagesUPloadByUser 폴더를 만들고 거기에 모든 이미지를 놓습니다. 올바른 디렉토리를 가리키는 webapp에 링크 (리눅스 링크)를 생성하십시오. 이제 이미지가 ur webapp에 저장되지 않고 쉽게 액세스 할 수 있습니다.

관련 문제