Anonymous
Пользовательский маршрутизатор Nginx и PHP
Сообщение
Anonymous » 14 ноя 2025, 19:39
Я сделал этот PHP-маршрутизатор, который анализирует URL-адреса в index.php и вызывает определенные функции. Однако, когда мой интерфейс обращается к API, блок API возвращает HTML-код, который / должен вернуть, он просто откатывается назад.
Код: Выделить всё
location /api/ {
try_files $uri /index.php$is_args$args;
# Handle PHP files
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock; # Adjust PHP version
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/crumbsnet/api;
fastcgi_param REQUEST_URI $1;
include fastcgi_params;
# CORS headers
add_header 'Access-Control-Allow-Origin' '*' always;
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE' always;
add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization, X-Requested-With' always;
# Handle preflight requests
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE';
add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization, X-Requested-With';
add_header 'Access-Control-Max-Age' 1728000;
add_header 'Content-Type' 'text/plain; charset=utf-8';
add_header 'Content-Length' 0;
return 204;
}
}
Это блок конфигурации nginx, отвечающий за API. И вот репозиторий API, если необходимо
Подробнее здесь:
https://stackoverflow.com/questions/798 ... tom-router
1763138364
Anonymous
Я сделал этот PHP-маршрутизатор, который анализирует URL-адреса в index.php и вызывает определенные функции. Однако, когда мой интерфейс обращается к API, блок API возвращает HTML-код, который / должен вернуть, он просто откатывается назад. [code]location /api/ { try_files $uri /index.php$is_args$args; # Handle PHP files fastcgi_pass unix:/var/run/php/php8.3-fpm.sock; # Adjust PHP version fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/crumbsnet/api; fastcgi_param REQUEST_URI $1; include fastcgi_params; # CORS headers add_header 'Access-Control-Allow-Origin' '*' always; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE' always; add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization, X-Requested-With' always; # Handle preflight requests if ($request_method = 'OPTIONS') { add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE'; add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization, X-Requested-With'; add_header 'Access-Control-Max-Age' 1728000; add_header 'Content-Type' 'text/plain; charset=utf-8'; add_header 'Content-Length' 0; return 204; } } [/code] Это блок конфигурации nginx, отвечающий за API. И вот репозиторий API, если необходимо Подробнее здесь: [url]https://stackoverflow.com/questions/79820215/nginx-and-php-custom-router[/url]