Score:4

ใช้ "rewrite" และ "try_files" ร่วมกัน [Nginx]

ธง cn

ฉันลบส่วนต่อท้าย ".php" ที่ส่วนท้ายของไฟล์ PHP บนเซิร์ฟเวอร์ Nginx ด้วยรหัสต่อไปนี้ แต่คราวนี้ฉันไม่สามารถส่งข้อมูลบางอย่างไปยังเซิร์ฟเวอร์ได้

try_files $uri/ $uri.html $uri.php$is_args$query_string;

ลิงก์บางลิงก์ในไซต์ส่งด้วย Ajax และไม่มีส่วนขยาย ".php" ที่ส่วนท้ายของลิงก์เหล่านี้ เช่น; https://panel.example.com/app/controller/ajax/collect

ตัวอย่างเช่น เมื่อฉันต้องการเข้าถึงไฟล์ "/collect" ที่ฉันต้องการเข้าถึงผ่าน Ajax หรือโดยตรง ฉันได้รับข้อผิดพลาด "ไม่พบไฟล์" เพราะฉัน "เขียนใหม่" ด้วยโค้ดด้านล่างและระบุ URL ที่สะอาด

เขียนใหม่ ^/([^/]+)/([^/]+)?$ /index.php?cmd=$1&scd=$2 สุดท้าย;
เขียนใหม่ ^/([^/]+)/?$ /index.php?cmd=$1 สุดท้าย;

ลิงก์ตัวอย่าง: https://panel.example.com/[details|cat|profile]/[subPages(productID, username..)]

เป็นผลให้รหัสข้างต้นถูกต้องและใช้งานได้ แต่ไม่ทำงานพร้อมกัน ฉันจะเรียกใช้รหัสทั้งสองนี้พร้อมกันได้อย่างไร

ไฟล์ Nginx vHost แบบเต็ม

Score:4
ธง us

คุณสามารถลองใช้วิธีต่อไปนี้:

ตำแหน่ง ~ ^/(?<cmd>[^/]+)/(?<scd>[^/]+) {
    try_files /index.php?cmd=$cmd&scd=$scd =404;
}

ตำแหน่ง ~ ^/(?<cmd>[^/]+)/ {
    try_files /index.php?cmd=$cmd =404;
}

ที่ตั้ง / {
    try_files $uri/ $uri.html $uri.php$is_args$args;
}

เราใช้อัลกอริทึมการจับคู่ตำแหน่ง nginx ที่นี่เพื่อตรวจสอบการจับคู่ URL กับนิพจน์ทั่วไปก่อน จากนั้นจึงดำเนินการที่เหมาะสมสำหรับ URL นั้น

ฉันใช้การจับภาพที่มีชื่อที่นี่ ?<ซม.> เพื่อให้ชื่อตัวแปรชัดเจนยิ่งขึ้น

อีกทั้ง ?$ ส่วนท้ายของนิพจน์ทั่วไปจะถูกลบออก เนื่องจากไม่มีความแตกต่าง ทั้งคู่ ?$ และว่างตรงกับสตริงใด ๆ

Emre6 avatar
cn flag
ขอขอบคุณสำหรับความช่วยเหลือของคุณ. ขออภัย ฉันได้รับข้อผิดพลาด 404 แต่ถ้าฉันไปที่ที่อยู่นี้ ฉันไม่พบข้อผิดพลาดใดๆ `https://panel.example.com/index?cmd=login` - [เพื่อไม่ให้คุณเข้าใจผิด การกำหนดค่าทั้งหมด ฉันกำลังแบ่งปันเนื้อหา](https://pastebin.com/Uk4X8dqt)
djdomi avatar
za flag
ไม่วางการกำหนดค่า ไม่ใช้บริการ nopaste

โพสต์คำตอบ

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