macos - español - configurar virtual host nginx
Ubique el archivo nginx.conf que mi nginx está utilizando en realidad (5)
Además de la respuesta de @Daniel Li, la instalación de nginx con Valet también usaría la configuración de Velet, que se encuentra en "/usr/local/etc/nginx/valet/valet.conf". El archivo nginx.conf habría importado este archivo Valet conf. La configuración que necesita puede estar en el archivo Valet.
Trabajando en el servidor de un cliente donde hay dos versiones diferentes de nginx instaladas. Creo que uno de ellos se instaló con el administrador de paquetes brew (es un cuadro osx) y el otro parece haber sido compilado e instalado con el archivo Makefile nginx. Busqué todos los archivos nginx.conf en el servidor, pero ninguno de estos archivos define los parámetros que nginx realmente está usando cuando lo inicio en el servidor. ¿Dónde está el archivo nginx.conf que no conozco?
Tanto nginx -t
como nginx -V
imprimirían la ruta predeterminada del archivo de configuración nginx.
$ nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
$ nginx -V
nginx version: nginx/1.11.1
built by gcc 4.9.2 (Debian 4.9.2-10)
built with OpenSSL 1.0.1k 8 Jan 2015
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules --conf-path=/etc/nginx/nginx.conf ...
Si lo desea, puede obtener el archivo de configuración de la siguiente manera:
$ nginx -V 2>&1 | grep -o ''/-/-conf-path=/(.*conf/)'' | cut -d ''='' -f2
/etc/nginx/nginx.conf
Incluso si ha cargado algún otro archivo de configuración, aún así imprimiría el valor predeterminado.
ps aux
le mostraría el archivo de configuración de nginx cargado actualmente.
$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 11 0.0 0.2 31720 2212 ? Ss Jul23 0:00 nginx: master process nginx -c /app/nginx.conf
Para que pueda obtener el archivo de configuración, por ejemplo:
$ ps aux | grep "[c]onf" | awk ''{print $(NF)}''
/app/nginx.conf
La ejecución de nginx -t
través de su línea de comando emitirá una prueba y anexará la salida con el camino de archivo al archivo de configuración (con un mensaje de error o de éxito).
% ps -o args -C nginx
COMMAND
build/sbin/nginx -c ../test.conf
Si nginx se ejecutó sin la opción -c
, puede usar la opción -V
para descubrir los argumentos de configuración que se configuraron en valores no estándar. Entre ellos, los más interesantes para ti son:
--prefix=PATH set installation prefix
--sbin-path=PATH set nginx binary pathname
--conf-path=PATH set nginx.conf pathname
which nginx
le dará la ruta del nginx que se está utilizando
EDITAR (2017-Ene-18)
Gracias al comentario de Will Palmer sobre esta respuesta, he agregado lo siguiente ...
Si instaló nginx a través de un administrador de paquetes como HomeBrew ...
which nginx
puede no darle el camino EXACTO al nginx que se está utilizando. Sin embargo, puedes encontrarlo usando
realpath $(which nginx)
y como lo menciona @Daniel Li
puedes obtener la configuración de nginx a través de su método
alternativamente puedes usar esto:
nginx -V