Respuestas:
Estas respuestas deben estar desactualizadas. Usar nginx 1.3.8 rutas absolutas con barras diagonales funciona. Las barras invertidas parecen funcionar, pero deberían duplicarse. Si no lo son, algunos, como un seguimiento, \"
se toman literalmente.
location /static/ {
# alias "C:\\foo\\bar\\...\\static\\";
alias "C:/foo/bar/.../static/";
expires 90d;
}
Las comillas pueden no ser necesarias, pero parecen una buena idea en caso de espacios incrustados.
Otra cosa que noté es que es importante hacer coincidir la ruta de URL y alias con respecto a terminar con una barra inclinada o no, una falta de coincidencia y no funciona.
Si intenta especificar una ruta absoluta como ...
location / {
alias C:\Users\SomeUser\mysite\static;
}
... luego de solicitar un archivo desde esa ubicación, probablemente verá errores en C: \ nginx \ logs \ error.log como:
2011/11/11 12:53:16 [error] 6236#0: *1 open() "/cygdrive/c/nginx/C:\Users\SomeUser\mysite\static\somefile.css
Al configurar nginx en Windows, especifique cualquier ruta relativa al directorio C: \ nginx. Esto funciona:
location / {
alias ../Users/SomeUser/mysite/static;
}
Personalmente, me alegró aprender esto porque hace que mis configuraciones nginx sean un poco más portátiles entre Windows y Linux de lo que esperaba. Para convertir un archivo de configuración de Linux en uno que funcione en Windows, para mí es básicamente:
s|/home/myname/|../Users/Myname|
Puedes probar esto:
establecer en nginx.conf
location / static / {alias / nginx / html / staticfiles /; }
Parece que el alias no funciona para mi sistema Windows. Traté de escribir
alias "c:"
Pero incluso esto no funciona. Y no puedo encontrar una manera de generar la ubicación después de que nginx vuelva a cargar el archivo de configuración. Así que simplemente no use alias en windows para nginx.
alias ../../cde/folder;
supongamos que su nginx.exe se ubica en d: / abc / nginx, pero la carpeta que intenta alias se ubica en d: / cde / folder. Algunas fuentes mencionan que nginx fue codificado con la ruta /cygdrive/c/nginx/
, en cuyo caso alias /cygdrive/d/path/
debería usarse, pero esto no funciona para mí. También merece mencionar que la barra diagonal al final de la ruta de alias no debe ser descuidada.
Para Nginx en Windows, debe usar este método:
ubicación / foo {
raíz C: // pathtoyourfile / folder1 / folder2;
} donde foo es una carpeta real dentro de folder2