2012-04-15 2 views
3

PSGI/Plack 기반 웹 응용 프로그램의 정적 파일 (이미지, 자바 스크립트, 스타일 시트)을 제공하는 방법은 무엇입니까?PSGI/Plack 웹 앱 (Perl)의 정적 파일 (이미지 등)을 제공하는 방법은 무엇입니까?

대답은 아마도 CGI, FastCGI, mod_psgi 또는 Starman과 같은 순수한 Perl이 사용하는 웹 서버에 따라 달라집니다. Plack :: Middleware :: Static 또는 Plack :: App :: File (Plack :: App :: URLMap과 함께 사용)은 개발 용으로 만 사용된다고 들었습니다 ...

답변

5

라이브 배포까지 웹 서버가 정적 컨텐츠를 다루도록하고 플래 잭 (Plack) 애플리케이션이 동적 컨텐츠를 처리하게하는 경우 매우 간단하고 빠른 설정이 필요하다. 일반적으로 웹 서버 구성에는 적어도 2 개의 프록시가 필요합니다. 정적 파일에 프록시 A (일반적으로 모두 같은 위치에 있다고 가정) 및 Plack 앱이 배치 된 포트에 프록시 B.

예를 들어, nginx 구성의 일부는 다음과 같을 수 있습니다. Plack 응용 프로그램이 포트 5001에서 로컬로 실행되고 있고 정적 파일을 URL 아래에서 사용할 수 있다고 가정하십시오. http://mydomainname.com/static

server { 
    listen 80; 
    server_name mydomainname.com; 

    location/{ 
     proxy_pass http://localhost:5001/; 
     proxy_redirect off; 
     proxy_set_header Host    $host; 
     proxy_set_header X-Real-IP  $remote_addr; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
     proxy_set_header X-Forwarded-Port $server_port; 
     proxy_set_header X-Forwarded-Host $host; 
    } 

    location /static {                                    
     root /path/to/static/files;                               
    } 

} 
+0

일부 웹 서버의 구성 예제는 무엇입니까? –

+1

@ JakubNarębski 샘플 nginx 설정을 추가했습니다. 아파치 설정은 비슷한 개념이다. 내가 원한다면 아파치 예제를 파헤 칠 수있다. – oalders