J'ai déployé mon interface frontale angulaire et mon backend Laravel sur une machine virtuelle Ubuntu avec un serveur web Nginx.
Maintenant, l'interface frontale fonctionne bien et est accessible via mon URL, cependant l'API du backend ne fonctionne pas - je reçois des erreurs 404 à ce sujet.
Voici ma configuration nginx :
server {
listen 443 ssl;
server_name my_ip myurl.de www.myurl.de;
root /var/www/html/dist;
index index.html;
ssl_certificate /etc/nginx/cert.cer;
ssl_certificate_key /etc/nginx/prvt.key;
location / {
try_files $uri $uri/ /index.html;
}
location /3rdpartylicenses.txt {
alias /var/www/html/dist/3rdpartylicenses.txt;
}
location /assets {
alias /var/www/html/dist/assets;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /index.nginx-debian.html {
log_not_found off;
access_log off;
}
location ^~ /api {
root /backend/LeagueOf5v5Backend/public;
index index.php;
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-fpm.sock; # Adjust the PHP-FPM socket path if needed
}
location ~ /\.ht {
deny all;
}
error_page 404 /index.html;
# Additional Nginx configuration settings can go here.
}
J'ai essayé de le tester avec https://nginx.viraptor.info, qui a confirmé qu'il avait testé le préfixe /api.
Cependant, en utilisant postman et l'URL, j'obtiens l'erreur 404. Mais quand je suis sur ma machine locale et que je le teste avec postman via localhost:8000/api/..., cela fonctionne très bien.
Toute aide est appréciée !
EDIT : Il s'agit d'un fichier de configuration pour à la fois Angular et Laravel.