Am avut o aplicație de unitate de fișiere deservită de apache care rulează pe următoarea cale:
https://app.example.com/app
Ni s-a cerut să actualizăm aplicația și să ne schimbăm pentru a folosi Nginx. De asemenea, am fost însărcinați să transmitem aplicația pe:
https://app.example.com
Cu toate acestea, mai avem câteva fișiere care fac referire la prima cale și am dori ca acele căi să fie accesibile.Pentru moment, putem servi numai fișiere folosind a doua cale. Fișierul meu de configurare nginx este:
Server {
asculta 80;
asculta [::]:80;
nume_server app.example.com;
# Forțați redirecționarea HTTPS
returnează 301 https://$http_host$request_uri;
}
Server {
asculta 443 ssl http2;
asculta [::]:443 ssl http2;
nume_server app.example.com;
ssl_certificate /etc/letsencrypt/live/app.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/app.example.com/privkey.pem;
includ /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
rădăcină /var/www/html;
index index.php;
locație ~ \.php(?:$|/) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
setați $path_info $fastcgi_path_info;
fastcgi_pass 127.0.0.1:9000;
}
}
Având în vedere configurația, mi-ar plăcea să le servesc pe ambele app.example.com
și app.example.com/app
cu aceleași fișiere de aplicație pe server. Am încercat să folosesc asta:
locație /aplicație {
rescrie ^/app(.*) /$1 ultimul;
}
Dar pur și simplu redirecționează toate solicitările și nu pot încărca corect un fișier, de exemplu, cu https://app.example.com/file?id=12345
. Aș aprecia orice ajutor în rezolvarea acestui lucru. Mulțumiri!