Informações de sinalizadores intuitivos de Nginx

Nginx é um servidor da web popular e o número de perguntas feitas no ServerFault, na lista de e-mails do Nginx e em outros lugares está aumentando rapidamente. Sempre que postar sua pergunta, lembre-se de incluir as informações sobre quais sinalizadores estão disponíveis ou instalados no Nginx. Esta informação está disponível digitando …

nginx -V

A saída do comando acima pode ter a seguinte aparência …

nginx version: nginx/1.2.4
built
by gcc 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)
TLS SNI support enabled

configure arguments
: --prefix=/usr/local/nginx-1.2.4 --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/logs/nginx/error.log --http-log-path=/var/logs/nginx/access.log --pid-path=/private/var/run/nginx.pid --lock-path=/private/var/lock/nginx.lock --with-http_ssl_module --with-http_stub_status_module --with-pcre=../pcre-8.31/

Não é intuitivo no momento. É isso?

Para torná-lo legível com facilidade, sempre formate -o. Existem muitas maneiras de fazer isso. É assim que eu faço …

nginx -V 2>&1 | sed 's/--/'$'n  &/g'

Aqui está a saída do comando acima …

nginx version: nginx/1.2.4
built
by gcc 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)
TLS SNI support enabled

configure arguments
:
--prefix=/usr/local/nginx-1.2.4
--sbin-path=/usr/sbin/nginx
--conf-path=/etc/nginx/nginx.conf
--error-log-path=/var/logs/nginx/error.log
--http-log-path=/var/logs/nginx/access.log
--pid-path=/private/var/run/nginx.pid
--lock-path=/private/var/lock/nginx.lock
--with-http_ssl_module
--with-http_stub_status_module
--with-pcre=../pcre-8.31/

Existem outras vantagens em fazer isso. Por exemplo, se você tem mais de 100 sinalizadores e deseja pesquisar se o módulo SSL está instalado, você pode fazer o seguinte …

nginx -V 2>&1 | sed 's/--/'$'n  &/g' | grep ssl

Se você se pergunta por nginx -V | grep sslque não vai ajudar, tente você mesmo!

Isenção de responsabilidade : esta dica foi testada no Mac OS X (Mavericks), Ubuntu Linux 12.04.xe no Debian Linux 7.x, em um shell bash e em um shell zsh. Se não funcionar na plataforma de sua escolha, comente abaixo e fico feliz em ajustá-lo para funcionar com outras plataformas também, se possível.

~ Boa codificação!