Menggunakan nginx, saya ingin mempertahankan url, tetapi sebenarnya memuat halaman yang sama tidak peduli apa. Saya akan menggunakan url dengan History.getState()
untuk merutekan permintaan di aplikasi javascript saya. Sepertinya itu harus menjadi hal yang sederhana untuk dilakukan?
location / {
rewrite (.*) base.html break;
}
berfungsi, tetapi mengalihkan url? Saya masih membutuhkan url, saya hanya ingin selalu menggunakan halaman yang sama.
javascript
nginx
history
prismofeverything
sumber
sumber
Jawaban:
Saya pikir ini akan melakukannya untuk Anda:
sumber
try_files '' /base.html;
(string kosong sebagai argumen pertama untuktry_files
) menghindari pencarian file yang disebut$uri
.try_files '' /base.html;
memberi saya masalah pengalihan dan kesalahan server internal, tetapi memodifikasinya untuktry_files '' /base.html =404;
memperbaikinya, jika itu membantu siapa pun.Hanya menggunakan
try_files
tidak bekerja untuk saya - itu menyebabkan kesalahan siklus pengalihan ulang atau internal di log saya.Dokumen Nginx memiliki beberapa detail tambahan:
http://nginx.org/en/docs/http/ngx_http_core_module.html#try_files
Jadi saya akhirnya menggunakan yang berikut ini:
sumber
try_files '' /base.html =404;
(lihat di atas)location = /base.html { expires 30s }
bagian itu.Penulisan ulang asli Anda hampir pasti berhasil. Saya tidak yakin mengapa itu akan mengarahkan, tapi saya pikir apa yang Anda inginkan sebenarnya adil
Anda harus dapat meletakkannya di lokasi atau langsung di server.
sumber
Ini bekerja untuk saya:
Ini memungkinkan saya untuk membuat URL tampung semua untuk aplikasi satu halaman javascript. Semua file statis seperti css, font, dan javascript yang dibangun oleh
npm run build
akan ditemukan jika mereka berada di direktori yang sama denganindex.html
.Jika file statis berada di direktori lain, untuk beberapa alasan, Anda juga memerlukan sesuatu seperti:
sumber
Ini bekerja untuk saya:
sumber
Cara yang benar adalah:
Menggunakan
last
akan membuat nginx menemukan yang cocok barulocation
blok yang sesuai dengan hasil penulisan ulang.try_files
juga merupakan pendekatan yang sangat valid untuk masalah ini.sumber