나는 사용해왔다nginx를 사용한 호스팅 클라우드 구성예를 들어:
nginx 구성 파일에 구성을 넣어야 합니다.
location ~ ^/user_data {
root /path/to/cloud/config/files;
sub_filter $public_ipv4 '$remote_addr';
sub_filter $private_ipv4 '$http_x_forwarded_for';
# sub_filter $private_ipv4 '$http_x_real_ip';
sub_filter_once off;
sub_filter_types '*';
}
그러나 이렇게 하면 다음이 nginx -t
제공됩니다.
nginx: [emerg] unknown "public_ipv4" variable
nginx: configuration file /etc/nginx/nginx.conf test failed
어떻게 해결할 수 있나요?
nginx 1.10.1 으로 컴파일 중입니다 http_sub_module
.
답변1
네...그래서 누가 CoreOS 문서를 작성했는지는 잘 모르겠지만, 문제가 오랫동안 지속되어 왔는데 어떻게 그런 실수를 할 수 있습니까?
기본적으로 Google "nginx 이스케이프 변수"를 검색하면 거기에 도달하게 됩니다. https://github.com/openresty/nginx-tutorials/blob/master/en/01-NginxVariables01.tut
사이트가 다운되는 경우 사본은 다음과 같습니다.
geo $dollar {
default "$";
}
server {
listen 8080;
location ~ ^/user_data {
root /path/to/cloud/config/files;
sub_filter ${dollar}public_ipv4 '$remote_addr';
sub_filter ${dollar}private_ipv4 '$http_x_forwarded_for';
# sub_filter ${dollar}private_ipv4 '$http_x_real_ip';
sub_filter_once off;
sub_filter_types '*';
}
}