2013-03-12 3 views
0

이것이 정말 바보 같은 질문 인 경우 먼저 사과드립니다./media/nginx를 사용하는 서버 파일

확인 - Flask + nginx를 사용하여 개인적인 용도로 쓰는 작은 응용 프로그램을 작성 중입니다.

나는 nginx와 flask를 설정했고 nginx는 Flask 앱의 정적 자산을 매우 행복하게 처리합니다. 내가 지금하고 싶은 것은 우분투 서버 상자에있는 서버의 모든 미디어 파일 /media/입니다.

기본적으로 nginx는 어떤 파일이든 액세스 할 수 있고 서버는 /media에서 사용할 수 있으며 usb 드라이브, sd 카드 등이 될 수 있습니다.

나는 정적 및 미디어에 대한 별칭으로의 nginx를 설정 한 :

location /static { 
    alias /path/to/my/app/static; 
} 

location /media { 
    alias /media; 
} 

와 나는 미디어 별칭에 정적 경로를 복사하면 내 정적 파일을 얻을 수 있기 때문에 nginx를 행복이라고 확신 .

내가 localhost/media을 가리키고있는 순간, 나는 빈 페이지 (nginx 403 금지 된 페이지가 아님)를 얻고 있습니다.

나는 변경 내용을 /media에서 744로 변경하려고 시도했다. /media 디렉토리를 '볼'수없는 근본적인 이유가 있습니까?

도움을 주시면 감사하겠습니다.

답변

0

권한 문제 인 것 같습니다. 실행 비트는 디렉토리를 통과해야하므로 chmod -R 0755 /media이 트릭을 수행 할 것입니다. 이 방법은 더 안전 할 수있는 디렉토리에만 적용하는 방법이지만 모든 파일에도 개인용으로는 문제가되지 않습니다.

+0

약간의 수정과 권한 변경 후, nginx로'/ media' 디렉토리를 볼 수 있습니다. 그러나, 나는 더 이상 SD 카드에 나무 아래로 갈 수 없어. 이제 실제 403 페이지를 얻습니다. nginx가 USB 드라이브/sd 카드의 모든 파일을 볼 수있게하려면 가장 좋은 방법은 무엇입니까? root로 nginx 사용 권한을 변경해야합니까? –

+0

해달라고 nginx 루트 권한을 부여, 그것은 나쁜 생각에 따라 사람입니다. 나는 당신이 어디에 있는지 생각해 그것은 또한 이동식 미디어의 파일 시스템 유형에 달려있다. 여기서 나는 다음과 같은 것을 잘 모르지만 사용자 그룹이 www- 데이터를 제공 할 수 있다고 말해야합니다. 루트로서 nginx를 실행하는 것보다 위험이 훨씬 적습니다. 시도해 볼 가치가 있습니다. – Johnride

+0

@ Darwin Tech - 미디어에있는 파일이 어떤 사용자 및 그룹에 속하는지 알 수 있다면 큰 도움이 될 것입니다. – Bart