현재 폴더 파일 내용에 두 번째 폴더를 "추가"할 수 있습니까? 심볼릭 링크?

현재 폴더 파일 내용에 두 번째 폴더를 "추가"할 수 있습니까? 심볼릭 링크?

질문: 현재 폴더의 파일 내용에 두 번째 폴더의 내용을 "추가"할 수 있습니까? (본질적으로 전체 Unix 관점에서 요청하고 있지만 대상이 웹 서버이므로 nginx도 작동할 수 있습니다.)

예:

/pub우리 서버 소프트웨어가 어디에 있는지 알고 있습니다 . 하지만 나에게도 index.php/static/files곳이 있습니다 test.php. 내가 원하는 test.php것은 /pub루트를 사용하여 nginx 웹 서버에 액세스하면 둘 다 루트에서 볼 /pub수 있다는 것입니다 test.php and index.php.

왜?

이제 루트 디렉터리에 있어야 하는 많은 유효성 검사 파일을 서버에 추가했기 때문입니다. bing_dfsfsfsdfs.html그리고 다른 파일들 google_aaddasdjsad.html. 이는 다중 서버 설정이므로 파일 수가 상당히 많습니다. 저는 /static/files이 모든 개별 파일을 저장할 수 있는 폴더를 만들고 ... /pub소프트웨어를 사용하여 폴더를 깨끗하게 유지하려고 합니다.

답변1

순전히 nginx 관점에서 볼 때 이것은 직업처럼 보입니다.try_files. 를 사용하면 try_filesnginx에게 주어진 URI에 대해 여러 위치를 시도하도록 지시할 수 있습니다. 그래서 이렇게 :

location ~ ^/([^/]+)$ {
  try_files $uri /static/files/$1 =404;
}

사용할 정확한 구문은 잘 모르겠지만 요점은 nginx에게 먼저 파일의 기본 루트를 시도한 다음 static/files루트 내의 디렉터리를 시도하고 아무것도 작동하지 않으면 마지막으로 404를 반환하도록 지시하는 것입니다.

답변2

당신은 그것을 사용할 수 있습니다alias

http://nginx.org/en/docs/http/ngx_http_core_module.html#alias

지정된 위치에서 대체를 정의합니다.

location ~ ^/(.+\.(?:gif|jpe?g|png))$ {
    alias /static/files/$1;
}

관련 정보