Ik heb een PHP applicatie die een REST API heeft op het `/api` pad, terwijl de home page op `/` zit. Beide locaties zouden in Nginx met FastCGI geconfigureerd moeten worden. Het is de bedoeling dat het `/api` pad in de PHP applicatie bereikbaar is op een URL die begint met een versienummer, terwijl het `api` gedeelte uit de URL verwijderd moet worden. Bijvoorbeeld: /v1/resources (Nginx) => FastCGI => /api/resources (PHP).
Het probleem is dat ik met mijn huidige configuratie niet goed weet hoe ik het "/v1" gedeelte van de URL kan strippen terwijl het "/api" gedeelte toegevoegd moet worden. Bestaat er een makkelijke manier zonder alle FastCGI parameters aan te passen (als zelfs dat mogelijk is)?
Het probleem is dat ik met mijn huidige configuratie niet goed weet hoe ik het "/v1" gedeelte van de URL kan strippen terwijl het "/api" gedeelte toegevoegd moet worden. Bestaat er een makkelijke manier zonder alle FastCGI parameters aan te passen (als zelfs dat mogelijk is)?
Nginx configuration file:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| location /v1 { try_files $uri /index.php$is_args$args; add_header Cache-Control 'no-cache, must-revalidate, max-age=0'; expires off; } location ~ ^/index\.php(/|$) { internal; include ./fastcgi_params; fastcgi_pass 192.168.1.10:9000; fastcgi_split_path_info ^(.+\.php)(/.*)$; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; fastcgi_param DOCUMENT_ROOT $realpath_root; # Hier ergens moet de "/v1" van de URL verwijderd worden en "/api" als prefix toegevoegd worden. # Disable caching of dynamic content. add_header Last-Modified $date_local; add_header Cache-Control 'no-store, no-cache, must-revalidate, max-age=0'; if_modified_since off; expires off; etag off; } |