Fusionar variable con cadena en archivo de configuración


24

Tengo la siguiente configuración en mi archivo conf

upload_set_form_field $upload_field_name.name "$upload_file_name";

Pero quiero cambiar el nombre del parámetro elegido a:

upload_set_form_field ($upload_field_name+"[name]") "$upload_file_name";

Entonces puedo obtener "adjunto [nombre]" pero esto no funciona. Estaría muy feliz si alguien pudiera ayudarme a fusionar variables con una cadena en el archivo de configuración nginx :).

Respuestas:


38

Esto funciona:

set $foo = 'foo';
set $foobar "${foo}bar";

2
¡Esto funcionó para mí! Gracias. Hice esto:set $object "$1"; set $object "${object}Display";
Carl Bennett

4

Nginx no tiene un carácter de concatenación, sino que se basa en caracteres válidos e inválidos, por ejemplo, en la directiva:

try_files $uri $uri/ @fallback;

$ uri es la variable y / es una cadena para agregar ya que / no puede estar en un nombre de variable.

Del mismo modo deberías intentar

$upload_field_name[name] "$upload_file_name";

Si esto no funciona, intente.

set $foo [name];
$upload_field_name$foo "$upload_file_name";

Sin embargo, no puedo decir si el módulo de carga lo permitirá. Errores de sintaxis menores también pueden estar presentes.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.