Si su configuración no incluye una root /some/absolute/path;declaración, o si incluye una que usa una ruta relativa como root some/relative/path;, entonces la ruta resultante depende de las opciones de tiempo de compilación.
Probablemente el único caso que le permitiría hacer una suposición educada sobre lo que esto significa para usted, si descarga y compila la fuente usted mismo. En ese caso, las rutas serían relativas a lo que --prefixse utilizó. Si no lo cambió, el valor predeterminado es /usr/local/nginx. Puede encontrar los parámetros con los que se compiló nginx a través de nginx -V, se enumera --prefixcomo el primero.
Dado que la rootdirectiva se establece de manera predeterminadahtml , esto, por supuesto, /usr/local/nginx/htmlsería la respuesta a su pregunta.
Sin embargo, si instaló nginx de alguna otra manera, todas las apuestas están desactivadas. Su distribución puede usar rutas predeterminadas completamente diferentes. Aprender a descubrir qué tipo de valores predeterminados usa su distribución de elección para las cosas es otra tarea completamente diferente.
nginx -V 2>&1 | grep --color -o -e '--prefix=[^[:space:]]\+'te da el nginx HOME.Si instala en Ubuntu usando apt-get, intente
/usr/share/nginx/www.EDITAR:
En versiones más recientes, la ruta ha cambiado a:
/usr/share/nginx/htmlEDITAR 2019:
Podría intentarlo
/var/www/html/index.nginx-debian.htmltambién.fuente
El directorio predeterminado de Nginx en Debian es
/var/www/nginx-default.Puedes consultar el archivo:
/etc/nginx/sites-enabled/defaulty encontrar
La raíz es la ubicación predeterminada.
fuente
html.default siteestá habilitado?La 'raíz web pública predeterminada' se puede encontrar en la salida nginx -V:
El valor --prefix es la respuesta a la pregunta. para la muestra de arriba la raíz es / var / lib / nginx
fuente
En Mac OS X, la instalación de nginx con brew hace que el directorio predeterminado:
Entonces:
medio
No hay un directorio html, por lo que debería crearse manualmente.
fuente
root html,index.htmly50x.htmlse coloca directamente en/usr/local/var/www. Por lo tanto, dudo de la existencia de lahtmlcarpeta. ¿Podrías ayudarme con eso?/usr/local/Cellar/nginx/1.10.2_1/htmldonde 1.10.2_1 es la versión nginx./usr/local/Cellar/nginx/1.12.0_1/html -> ../../../var/www/y langinx -Vmuestra:--prefix=/usr/local/Cellar/nginx/1.12.0_1tambiénroot htmlse redirige a través de ese enlace.Simplemente puede asignar la carpeta raíz de nginx a la ubicación de su sitio web:
dentro del archivo predeterminado , busque la raíz en la etiqueta del servidor y cambie la carpeta predeterminada de su sitio web, por ejemplo, mis sitios web están en / var / www
Cuando estaba evaluando nginx, apache2 y lighttpd, los asigné a mi sitio web en / var / www . Encontré esta es la mejor manera de evaluar de manera eficiente.
Luego puede iniciar / detener el servidor de su elección y ver cuál funciona mejor.
p.ej
Por cierto, nginx en realidad es muy rápido!
fuente
Como dijo la mayoría de los usuarios, está bajo este camino:
Esta es la ruta predeterminada, pero puedes hacer la tuya.
todo lo que necesita es crear uno en el árbol raíz del servidor web y darle algunos permisos "no 0777" y solo para un usuario y visible solo para ese usuario, pero el final de la ruta es visible para todos desde el final de la ruta es lo que sus archivos y carpetas serán vistos por el público.
por ejemplo, puedes hacer uno como este:
cada vez que crea un host virtual en Nginx, puede personalizar su propia ruta raíz, simplemente agregue algo como esto en su bloque de servidor:
fuente
/usr/share/nginx/html/carpeta. ¿Hay alguna razón para cambiar esa ruta (por razones de seguridad u otras)? ¿Está bien dejarlo en la carpeta predeterminada si voy a ser el único usuario y si solo voy a alojar 1 sitio web en él?La carpeta web predeterminada para nginx depende de cómo la instaló, pero normalmente está en estas ubicaciones:
fuente
Para imágenes de Ubuntu y docker:
fuente
Ejecute el comando
nginx -Vy busque el--prefix. Use esa entrada para localizar sus rutas predeterminadas.fuente
Volcar la configuración:
Lo que obtienes puede ser diferente ya que depende de cómo
nginxfue configurado / instalado.Referencias
-Topción en lamanpágina-Topción en el mensaje de ayudaActualización: Existe cierta confusión sobre el tema de si / cuando
-Tse agregó la opciónnginx. Fue documentado en la página de manual por vl-homutov el 16 de junio de 2015, que se convirtió en parte de la versión v1.9.2 . Incluso se menciona en las notas de la versión . La-Topción ha estado presente en todas lasnginxversiones desde entonces, incluida la disponible en Ubuntu 16.04.1 LTS:fuente
-Topción. ¿-TFalta la opción de su instalación particular? ¿Puede mostrar algo para corroborar su reclamo?Mire el archivo de configuración nginx para estar seguro. Este comando greps para lo que esté configurado en su máquina:
en mi máquina era: `root / usr / share / nginx / www;
fuente
En Mac instale nginx con brew:
/usr/local/etc/nginx/nginx.conf
fuente
Para CentOS, Ubuntu y Fedora, el directorio predeterminado es
/usr/share/nginx/htmlfuente
var/www/html.Para AWS EC2 Linux encontrará aquí:
fuente
En mi caso fue en
/usr/share/nginx/htmlpuede intentar encontrar realizando una búsqueda
fuente
Si está en Ubuntu 14.04, puede encontrar el directorio nginx www en la siguiente ruta:
fuente
var/www/html.Puede buscarlo, sin importar dónde lo movieron (administrador del sistema movido o versión más nueva de nginx)
fuente
Si necesita encontrar la carpeta raíz pública nginx que se definió en el momento de la compilación, puede verificar su archivo access.log.
Aquí hay un ejemplo de la sección http de nginx.conf con la directiva log_format modificada , $ document_root se agrega al comienzo de la cadena:
Luego haga una copia de seguridad de todos los archivos de configuración * .conf en el directorio conf.d y cree allí el archivo de configuración, test.conf con las siguientes líneas:
Agregue la siguiente línea al archivo / etc / hosts:
127.0.0.1 localhostRecargar la configuración de nginx:
nginx -s reloadEnviar solicitud GET a http: // localhost :
curl http://localhostVerifique la última cadena de access.log :
tail -n 1 /var/log/nginx/access.logAquí está la salida de muestra de este comando, donde / etc / nginx / html es la raíz de documento predeterminada definida en tiempo de compilación:
fuente
puede acceder a la configuración del archivo nginx, puede ver la raíz / ruta. en este valor predeterminado de nginx apache en
/var/www/htmlfuente
/var/www/htmles la raíz web predeterminada para apache, no nginx.* páginas web predeterminadas asignadas en var / www / html * servidor de configuración predeterminado, etc / nginx / sites / avaliable / nginx.conf
* servidor de configuración predeterminado, etc / nginx / nginx.conf
contenido..
registros de acceso predeterminados con clientes ip var / log / nginx / ...
fuente
Solo para tener en cuenta que la página de índice predeterminada para el servidor nginx también mostrará la ubicación raíz también. Desde nginx (1.4.3) en Amazon Linux AMI, obtiene lo siguiente:
Esta es la página predeterminada index.html que se distribuye con nginx en la AMI de Amazon Linux. Se encuentra en / usr / share / nginx / html.
Ahora debe colocar su contenido en la ubicación que elija y editar la directiva de configuración raíz en el archivo de configuración nginx /etc/nginx/nginx.conf
fuente
Mi nginx en Ubuntu es "versión nginx: nginx / 1.9.12 (Ubuntu)" y la ruta raíz es / var / www / html /
La información de Ubuntu es: No hay módulos LSB disponibles. ID de distribuidor: Ubuntu Descripción: Ubuntu 16.04 LTS Release: 16.04 Nombre en clave: xenial
En realidad, si acaba de instalar nginx en Ubuntu, puede ir a "/ etc / nginx / sites-available" y verificar el archivo predeterminado, hay una configuración como "root / web / root / path / goes / here / here". Y eso es lo que estás buscando.
fuente
Puede encontrarlo en / var / www / que es el directorio predeterminado para nginx y apache, pero puede cambiarlo. paso 1 ve a la siguiente carpeta / etc / nginx / sites-available
paso 2 edite el archivo predeterminado en el que puede encontrar un bloque de servidor debajo del cual habrá una línea llamada como raíz que es lo que define la ubicación.
fuente
en ubuntu 19.04, lo encontramos en
fuente
Para nginx / 1.4.6 (Ubuntu)
fuente
En Ubuntu, la ubicación predeterminada del directorio raíz de Nginx es
/usr/share/nginx/htmlfuente
El valor predeterminado está relacionado con la
prefixopción delconfigurescript cuando se compila nginx; Aquí hay una muestra extraña de Debian:Posteriormente, el valor predeterminado de
rootse establece en elhtmldirectorio (según la documentación de larootdirectiva ), que está dentroprefix, como se puede verificar mirando la$document_rootvariable desde un archivo de configuración simple:Sin embargo, las distribuciones malvadas como Debian parecen modificarlo un poco, para mantenerlo entretenido adicional:
Entonces, en esta instancia de Debian, puede ver que la raíz finalmente está configurada en
/usr/share/nginx/www.Pero como vio con la configuración del servidor de muestra que serviría a su
$document_rootvalor sobre http, configurar nginx es lo suficientemente simple como para que pueda escribir su propia configuración en cuestión de una o dos líneas, especificando lo requeridorootpara satisfacer sus necesidades exactas.fuente
root html;, quiero decir, cuál es el camino real?También tuve este problema en Digital Ocean con un sitio web de WordPress con nginx.
Mi solución fue hacer lo siguiente:
/etc/nginx/nginx.confarchivo con lo siguiente:Entonces tuve que
sudo service nginx restartnginx -Vel comando también le muestra dónde se encuentra su archivo de configuración nginx (se apuntó al mío/etc/nginx/nginx.conf)fuente
Alpine Linux no tiene ninguna ubicación predeterminada en absoluto. El archivo
/etc/nginx/conf.d/default.confdice:Reemplace aquellos con una línea como
root /var/www/localhost/htdocspara apuntar al directorio que desea. Luegosudo service nginx restartpara reiniciar.fuente
nginx:alpineimagen y sirve contenido de/usr/share/nginx/htmlfábrica.apk add nginxinstalación manual de nginx desde el propio administrador de paquetes de Alpine, obtiene la situación descrita en mi respuesta (o ese fue el caso cuando lo probé hace un par de meses de todos modos).