Score:1

ไม่รวม google doc ที่ฝัง iframe จากกฎ nginx rewrite หรือไม่

ธง ua

ฉันหวังว่าจะมีคนช่วยฉันได้ที่นี่ เพราะฉันมีความรู้จำกัดมากเกี่ยวกับสิ่งที่เกี่ยวข้องกับเซิร์ฟเวอร์

ฉันมีไซต์ WordPress ที่ฉันต้องการจำกัดการเข้าถึงไดเร็กทอรี /wp-content/uploads/ สำหรับผู้ใช้ที่เข้าสู่ระบบเท่านั้น สำหรับสิ่งนี้ ฉันได้ใช้วิธีแก้ไขปัญหาตามที่ระบุในลิงก์ต่อไปนี้บนเซิร์ฟเวอร์ nginx:

https://wordpress.stackexchange.com/questions/37144/how-to-protect-uploads-if-user-is-not-logged-in

และวิธีนี้ใช้ได้ดี อย่างไรก็ตามมีปัญหา

ฉันมีไฟล์ PDF ที่ฝังผ่าน Google doc ที่ฝังในบางหน้า google doc embed ใช้เพื่อโหลด PDF ดังนี้:

<iframe src="//docs.google.com/viewer?url=https://link-to-file.pdf&amp;hl=en_US&amp;embedded=true" class="" style="width:100%; height:500px; border: none;" scrolling="no"></iframe>

กฎ nginx ของฉันเป็นดังนี้:

ตำแหน่ง ~* /(?:อัพโหลด)/* {
   เขียนใหม่ /wp-content/uploads/(.*)$ /dl-file.php?file=$1;
}

ฉันจะยกเว้นเหนือ iframe หรือ //docs.google.co.th url จากกฎนี้?

ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมอย่างสูง

ขอบคุณ

บาการ์

kz flag
การยกเว้นโปรแกรมดูเอกสารของ Google หมายความว่าคุณกำลังทำให้ PDF พร้อมใช้งานแบบสาธารณะ...เหตุใดจึงไม่ทำให้ PDF เปิดเผยต่อสาธารณะ อีกทางหนึ่ง ที่อยู่ IP ที่ Google ขอเอกสารเหล่านี้สอดคล้องกันหรือไม่
Score:0
ธง pl
JFK

คุณสามารถใช้ผู้อ้างอิง (http://nginx.org/en/docs/http/ngx_http_referer_module.html#valid_referers)

valid_referers ไม่มีการบล็อก server_names docs.google.com;

กว่าที่คุณสามารถใช้ $invalid_referer ตัวแปรในบล็อกตำแหน่งของคุณได้

ถ้า ($invalid_referer) {
    เขียนใหม่ /wp-content/uploads/(.*)$ /dl-file.php?file=$1;
}
bakar avatar
ua flag
ขออภัย แต่ไม่ได้ผล ดูเหมือนว่าจะไม่ได้ตรวจสอบกฎ nginx เดิมด้วยซ้ำ
us flag
อาจเป็นไปได้ว่าโปรแกรมดู `doc.google.com` ไม่ได้ส่งส่วนหัวอ้างอิง HTTP ที่ถูกต้องเมื่อร้องขอไฟล์สำหรับแสดง ในกรณีนี้ คุณต้องหาโปรแกรมดู PDF อื่น
JFK avatar
pl flag
JFK
เพิ่ม $http_refferer ในบันทึกของคุณ (https://docs.nginx.com/nginx/admin-guide/monitoring/logging/) และตรวจสอบว่า Google ส่งอะไรถึงคุณ หากมีสิ่งใด
bakar avatar
ua flag
@TeroKilkanen ขอบคุณสำหรับความคิดเห็น คุณพูดถูก ไม่มีผู้อ้างอิงในบันทึกการเข้าถึง ในที่สุด ฉันได้ตัดสินใจใช้ปลั๊กอินโปรแกรมดู pdf อื่น
bakar avatar
ua flag
@JFK ขอบคุณสำหรับความคิดเห็น ดูเหมือนว่า google จะไม่ส่งผู้อ้างอิงใดๆ และนั่นคือสาเหตุที่กฎด้านบนใช้ไม่ได้ ขอบคุณสำหรับความช่วยเหลือ btw

โพสต์คำตอบ

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