location / {
try_files $uri $uri/ /redirect.php?get=$uri;
}
А вообще, старайтесь конфиги приводить к более читаемому и более простому варианту.
Например, зачем использовать такой вложенный локейшн? Ведь острой необходимости в нем нет, а конфиг усложняет на порядок.
Вот вам пример чистого конфига, который все запросы перенаправляет на index.php, если не найдет таких файлов в папке /var/www/apps/test/
И собственно, если файл будет заканчиваться на .php он будет обрабатываться php-fpm
server {
listen 80;
server_name test.com
root /var/www/apps/test;
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass 127.0.0.1:9000;
try_files $uri =404;
}
}
Используйте это как хороший пример легкочитаемого конфига.
Также можно вынести все что связано с ssl например в отдельный конфиг и просто включать его в основной.
Если первый сервер создан, чтобы редиректить на второй, то зачем в нем все это, достаточно так:
server {
listen 80;
server_name test.com;
return 301 https://$host$request_uri;
}
<code>