Mengenai isu konfigurasi lokasi nginx, apakah itu root?
阿神
阿神 2017-05-16 17:07:45
0
2
646

1 Beberapa ketika dahulu, saya belajar mengasingkan projek sebelum dan selepas vue2 Selepas demo selesai, saya mahu menggunakannya secara tempatan (kerana tiada mesin Linux, saya hanya boleh mensimulasikan penggunaan pada win7), tetapi apabila saya telah. belajar konfigurasi nginx, saya menghadapi masalah yang tidak dapat difahami, konfigurasi root dalam konfigurasi pelayan nginx, masalahnya adalah seperti berikut:
Menurut dokumentasi rasmi, saya mula nginx pada win7, mengakses localhost dalam penyemak imbas, dan mendapat halaman biasa. , iaitu, nginx bermula seperti biasa Kemudian saya mula mengubah suai konfigurasi.

    server {
        listen       80;
        server_name  localhost;
        
        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  app.html app.htm;
        }

        location = /img  {
            root   dist;
            index  app.html app.htm;
        }    

Saya melihat di beberapa blog bahawa laluan ke root sebenarnya adalah laluan relatif kepada nginx.exe, jadi saya mencipta folder dist baharu:
][1]
Ia berada pada tahap yang sama dengan html, dan pemadanan adalah diberi keutamaan seperti yang dinyatakan di peringkat Internet, tanda sama yang paling tinggi dikonfigurasikan jika saya melawati http://localhost/img pada masa ini, laluan ini harus membuka fail app.html dalam dist, tetapi hasilnya ialah 404. , yang boleh dilihat dalam log datang ke ayat ini:

D:\nginx\nginx-1.12.0/html/img/index.html" is not found
//D:\nginx\nginx-1.12.0是我的安装目录

nginx pergi ke folder html dan mencari fail index.html dalam folder img
Apa yang saya faham ialah walaupun anda melihat di bawah html, ia mestilah html/dist/index.html, dan ia tidak sepatutnya; img pula.

Jadi saya berfikir sama ada ia sepatutnya menjadi laluan mutlak, jadi saya menukarnya kepada yang berikut, mematikan proses dan memulakan semula:

//日志
"D:\nginx\nginx-1.12.0/html/img/index.html" is not found

Masih mencari jalan ini, rasanya lokasi kedua saya tidak sepadan langsung

Kemudian saya pergi melihat dokumen panduan di laman web rasmi dan melihat perenggan berikut:

server {
    location / {
        root /data/www;
    }

    location /images/ {
        root /data;
    }
}

Kemudian saya mendapat lebih sakit kepala Jalan di laman web rasmi seolah-olah menjadi laluan mutlak, tetapi dari mana ia datang, dari mana ia dicipta, apa yang perlu dikonfigurasikan atau apa yang perlu dipasang, saya tidak dapat memikirkannya. keluar akar sama sekali

Padanan biasa, keutamaan, port, IP dan proksi biasa lain semuanya boleh difahami, tetapi akarnya tidak dapat mengetahui apa yang sedang berlaku.

Saya harap rakan-rakan yang biasa dengan nginx dapat menerangkan kepada saya secara terperinci apa yang berlaku dengan root ini.

1. Apa yang berlaku kepada laluan akar?
2 Bagaimana untuk menukar konfigurasi img supaya saya boleh mengakses dist/app.html?

阿神
阿神

闭关修行中......

membalas semua(2)
仅有的幸福

root ialah direktori akar web Adalah disyorkan untuk menggunakan 绝对路径 Laluan relatif adalah tertakluk kepada direktori kerja nginx dan terdapat ketidakpastian

为情所困

root ialah direktori root, gunakan laluan mutlak, jadi tidak akan ada ralat

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan