#nginx
#nginx
Вопрос:
location ~ .(jpg|png|css|js|html|json|svg|jpeg) {
try_files $uri =404;
}
location ~ ^/amk(.*) {
include fastcgi_params;
fastcgi_split_path_info ^(. .php)(/. )$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_pass localhost:9000;
fastcgi_param SCRIPT_FILENAME $document_root/amk/app.php;
}
location ~ ^/ewan(.*) {
include fastcgi_params;
fastcgi_pass localhost:9000;
fastcgi_split_path_info ^(. .php)(/. )$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root/ewan/app.php;
}
В принципе, я хочу сохранить эту конфигурацию nginx, но каталог изменится
Так что это может быть amk, это может быть mcaq
Поэтому я хочу https://example.com/apps/FOLDER чтобы перенаправить php на $document_root/FOLDER/app.php
Но https://example.com/apps/FOLDER/images/test.jpg чтобы перейти к $document_root/FOLDER/images/test.jpg
Есть идеи?
Ответ №1:
location ~ .(jpg|png|css|js|html|json|svg|jpeg) {
rewrite ^/apps(/.*)$ $1 break;
try_files $uri =404;
}
location ~ ^/apps/([^/] )/?(.*?)$ {
set $site $1;
set $loc $2;
include fastcgi_params;
fastcgi_split_path_info ^(. .php)(/. )$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_pass localhost:9000;
fastcgi_param SCRIPT_FILENAME $document_root/$site/app.php;
}
Это решение, которое я нашел.