nginx - first - yii framework descargar
Configuración de Nginx Yii2 en diferentes carpetas (1)
Enfrenté un problema al configurar el servidor nginx para la aplicación básica yii2.
Aquí está mi archivo de bloque de servicio:
server {
listen 80 ;
access_log /var/log/nginx/access-server.log;
error_log /var/log/nginx/error-server.log;
charset utf-8;
location /fetch {
root /usr/share/nginx/html/another_folder/web/;
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ /.php$ {
fastcgi_split_path_info ^(.+/.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Mi proyecto se encuentra en otra carpeta "another_folder". Y quiero que cuando el usuario vaya a url: http: // ip / fetch files nginx sirva archivos de otra carpeta.
Mi archivo de registro de error me devuelve:
2017/02/11 12:38:52 [error] 4242#0: *12 FastCGI sent in stderr: "Unable to open primary script: /usr/share/nginx/html/index.php (No such file or directory)" while reading response header from upstream
Y hermano muestra: No se especificó ningún archivo de entrada.
¿Puedes ayudarme con este problema?
¡Gracias!
Además de su comentario, cualquier URI que comience con /fetch
que no coincida con un archivo estático dentro de la ruta con alias, se debe redirigir a /fetch/index.php
.
location ^~ /fetch {
alias /usr/share/nginx/html/another_folder/web;
if (!-e $request_filename) { rewrite ^ /fetch/index.php last; }
location ~ /.php$ {
if (!-f $request_filename) { return 404; }
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $request_filename;
fastcgi_pass 127.0.0.1:9000;
}
}
try_files
uso de try_files
con alias
debido a este problema a largo plazo .
Consulte esta precaución con respecto al uso de if
.