LINUX.ORG.RU

CGI в lighttpd на Bash - принятие аргументов URI

 , ,


1

2

В .lighttpd.conf имею

cgi.assign += ( ".sh" => "/bin/bash" )

Скрипт успешно запускается через веб-сервер.

Подставляет ли сервер значения каких-либо аргументов из URI в качестве аргументов командной строки – $@ ($1 и далее)?

Видел примеры с ?var1=x&var2=y, но их в $1, $2 не оказывается.

★★★★★
Ответ на: комментарий от eugrus

Обработка параметров делается вот так:

declare -A params 
IFS='&' read -ra query_params <<< "$QUERY_STRING" 
for param in "${query_params[@]}"; do 
  IFS='=' read -r key 
  value <<< "$param"   
  params["$key"]="$value" 
done

И далее можно обращаться к ${params[«параметр»]}

eugrus ★★★★★
() автор топика