Am migrat de la Apache la Nginx, așa că vreau să stabilesc toate regulile în Nginx.
Poartă: Redirecționați o adresă URL către un alt domeniu cu același nume de fișier dacă acel fișier nu este găsit pe serverul solicitat.
Exemplu
Dacă un utilizator deschide https://www.example.com/data/1.jpg atunci serverul meu va încerca să găsească „1.jpg” în directorul „date”. Dacă acel fișier nu este găsit, redirecționați utilizatorul la adresa URL a serverului de rezervă, cum ar fi https://www.example2.com/backup/1.jpg
Exemplu în .htaccess
RewriteCond %{REQUEST_FILENAME} -f [SAU]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule (.*) - [L]
RewriteRule (.*) https://example2.com/backup/$1 [L]
Ce am incercat
- Caută soluții existente, dar nu am găsit nicio soluție de lucru.
- Încercați să convertiți apache config în Nginx config prin convertoare, dar nu funcționează.
Unii au încercat configurarea, dar nu funcționează.
locație ~ /data/.* {
dacă (-e $nume_fișier_cerere){
rescrie ^ https://www.example2.com/backup/$1 ultimul;
}
}
locație ~ /data/.* {
dacă (-e $nume_fișier_cerere){
rescrie ^ https://www.example2.com/backup/$1 permanent;
}
}
locație ~ /data/.* {
try_files $uri https://www.example2.com/backup/$uri;
}