Nginx의 구성 파일에 디렉터리를 접두사로 추가할 수 있나요?

Nginx의 구성 파일에 디렉터리를 접두사로 추가할 수 있나요?

저는 간단한 Debian 이미지를 사용하는 개발 환경을 갖고 있으며, 스테이징 환경으로 Jetware EC2에 최적화된 Debian 이미지도 사용하고 있습니다.

Jetware 파일 시스템은 아래에 설치되므로 /jetnginx.conf와 vhost 파일 사이에 약간의 변경 사항이 있습니다. 예를 들면 다음과 같습니다.

pid /run/nginx/nginx.pid; 그리고 pid /jet/run/nginx/nginx.pid;

아니면 include /jet/etc/nginx/mime.types;vs include /jet/etc/nginx/mime.types;

당신은 가지고 있습니까?서버 루트 디렉터리파일 간의 변경을 최소화하기 위해 nginx.conf 구성에 추가할 수 있는 일종의 지시문이 있습니까?

답변1

방법(파일 상단에서 "$filesystem_root_dir" 변수를 시작하고 각 구성에 값을 할당하는 방법)은 다음과 같습니다.

  • 허용되지 않습니다(치명적인 오류가 발생합니다 nginx: [emerg] "set" directive is not allowed here in /etc/nginx/nginx.conf:1:)
  • Nginx 팀은 다음과 같이 낙담했습니다.
Variables should not be used as template macros. Variables are evaluated in the run-time during the processing of each request, so they are rather costly compared to plain static configuration. Using variables to store static strings is also a bad idea. Instead, a macro expansion and "include" directives should be used to generate configs more easily and it can be done with the external tools, e.g. sed + make or any other common template mechanism. 

http://nginx.org/en/docs/faq/variables_in_config.html

템플릿 생성기 사용을 고려했지만 비용이 이점보다 훨씬 더 크기 때문에 파일을 약간 다른 상태로 유지하려고 했습니다.

관련 정보