저는 사용자가 이미지를 업로드할 수 있는 웹페이지를 만들고 있습니다. 파일 시스템을 사용하여 이미지를 저장하겠습니다. 이런 종류의 데이터를 저장하는 데 가장 좋은 디렉토리가 무엇인지 알고 싶습니다. /var/
디렉토리 인가요 ? /srv/
목차? 아니면 다른 디렉토리일까요?
답변1
디렉터리 경로를 선택하기 전에 고려해야 할 몇 가지 요소가 있습니다. 가장 좋은 디렉토리는 예상되는 파일 볼륨을 저장할 수 있는 충분한 용량을 갖고 있고 적절한 보호 수준을 갖추고 있으며 표준 패키지로 인해 덮어쓰이거나 복잡해질 위험이 없는 디렉토리입니다.
/srv/www
아니면 /srv/images
둘 다 괜찮아요FHS 표준에 명시되어 있습니다.또한 권장 /var/www
되거나 /var/images
권장되지 않습니다:
답변2
원하는 곳에 보관하세요! 이것이 귀하의 파일 시스템이라면 이것이 귀하가 선호하는 것입니다. 올바른 권한이 있는지 확인하세요.
편집하다: @jlliagre가 아래에 언급한 것처럼 일부 파일 시스템 위치는 이러한 이미지를 저장하는 데 전혀 적합하지 않기 때문에 위의 내용은 약간 과장된 것입니다.
여러 사용자가 있고 각 사용자가 자신의 이미지 디렉토리를 가지기를 원한다면 다음과 같은 것을 권장합니다 /home/[user]/images
.
단일 디렉토리에 있는 모든 이미지에 쉽게 액세스하려면 다음과 같이 /var/www/img/user_uploads/[user]
(또는 OS에 따라 유사한 방법) 수행할 것입니다.
그러나 각 사용자 및 작업자 프로세스에 대한 올바른 액세스 수준을 유지하면서 각 사용자에게 비공개로 유지되어야 하는 공개 액세스를 제한하려면 권한이 중요합니다.
기본적으로 공개 권한이 있는 일부 디렉터리는 하위 디렉터리로 상속됩니다. 따라서 이러한 이미지를 에 저장하면 /home/[user]/public_html/images
이 동작을 방지하기 위해 필요한 조치를 취하지 않는 한 전체 인터넷에서 해당 이미지에 액세스할 수 있습니다.
즉, 개인 디렉터리(예를 들어)에 저장하는 경우 /home/user/images
웹 서버 프로세스/사용자는 해당 디렉터리에 액세스하려면 명시적인 권한이 필요합니다.