Score:0

คำสั่ง Nginx try_file ไม่ทำงานตามที่คาดไว้

ธง zm

ฉันพยายามทำความเข้าใจกับไฟล์กำหนดค่า Nginx นี่คือแผนผังไดเรกทอรีแอปของฉัน:

/แอป
|-- abcd.html
|--file.php
|--index.html
|--index.php
|--สสส
| `--index.html
|--style.css
`--thumb.png

นี่คือการทดสอบการกำหนดค่า nginx ของฉัน:

เหตุการณ์ {}
http {
        rewrite_log บน;
        error_log /var/log/nginx/localhost.error_log ดีบัก;
        เซิร์ฟเวอร์ {
                รวม mime.types;
                รูท / แอพ;
                ฟัง 8080;
                ดัชนี index.html;
                ที่ตั้ง / {
                        try_files $uri/ =404;
                }
        }
}

จากความเข้าใจของฉันเกี่ยวกับไฟล์กำหนดค่า Nginx เมื่อฉันขอ localhost:8080/ตามเอกสารของ try_files ควรตรวจสอบไฟล์ /เนื่องจากเป็นไดเร็กทอรีจึงควรให้บริการไฟล์ดัชนีภายใน แต่จริงๆแล้วมันไม่ใช่ ฉันยังพยายาม try_files $uri =404;. มันส่งคืนหน้า 404 ด้วย แต่เมื่อฉันพยายาม try_files $uri $uri/ =404มันใช้งานได้และตอบสนองด้วยไฟล์ดัชนี ใครช่วยอธิบายหน่อยได้ไหมว่าเกิดอะไรขึ้น

ฉันลองอย่างอื่นที่ไม่ได้ผลตามที่คาดไว้ ก่อนหน้านี้ฉันพยายามในบริบทของสถานที่ try_files /sss /sss/ =404. ฉันคาดว่ามันให้บริการไฟล์ดัชนีข้างใน สสส ไดเร็กทอรี ไม่ว่า url ที่ฉันร้องขอจะเป็นอะไรก็ตาม แต่มันติดอยู่ในคำขอวนซ้ำไม่สิ้นสุด มันตอบสนองด้วยการเปลี่ยนเส้นทาง 301 และการร้องขอ /sss/ URL. มันไม่เหมือนกรณีก่อนหน้านี้เมื่อฉันใช้ try_files $uri $uri/ =404?

Richard Smith avatar
jp flag
โมดูล [`index`](http://nginx.org/en/docs/http/ngx_http_index_module.html#index) มีหน้าที่ในการประมวลผล URI ที่ลงท้ายด้วย `/` และจะทำให้เกิด *การเปลี่ยนเส้นทางภายใน* ซึ่งเปลี่ยนค่าของ `$uri` เป็น `/index.html` นั่นคือเหตุผลที่คุณต้องการ *ทั้ง* `$uri` และ `$uri/` ในคำสั่ง `try_files`

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา