ถ้า code php เขียนแบบนี้ จะแปรงให้เป็น code ที่ใส่ใน nginx.conf ยังไงครับ
if($_GET[‘val’] != sha1(md5($_SERVER[‘REMOTE_ADDR’]))) {
return 403;
}
ถ้า code php เขียนแบบนี้ จะแปรงให้เป็น code ที่ใส่ใน nginx.conf ยังไงครับ
if($_GET[‘val’] != sha1(md5($_SERVER[‘REMOTE_ADDR’]))) {
return 403;
}
php เป็น script
nginx/apache เป็นเว็บเซิร์ฟเวอร์
code ของ php ไม่เกี่ยวกับ nginx ครับ - -’
วิธีทำให้ nginx เรียกใช้ php ได้ต้องใช้ fastcgi ครับ
ครับเข้าใจครับ แต่ว่าต้องการจะเขียน code ใน nginx.conf อ่าครับ ถ้าเขียนใน php มันก็เป็นแบบที่ผมเขียนแต่ใน nginx ผมไม่รู้จะเขียนยังไง ติดอยู่ตรง md5 sha1
if($arg_val != sha1(md5($remote_addr))) {
return 403;
}
จะใช้ยี่ห้ออะไรครับ คอลเกต Oral-B … อ้าวไม่ใช่เหรอ
nginx.conf เป็นไฟล์คอนฟิคของเว็ปเซิฟเวอร์ครับ syntax ก็ต่างกันกับ php แน่นอน และคุณไม่สามารถเอาโค้ด php ไปยัดไว้ในนั้นได้หรอกครับ
แล้วใน config ของ nginx.conf มันกำหนดเงื่อนไขอะไรไม่ได้เลยหรอครับ
ก้ได้ระดับนึงครับ แต่ถ้าเงื่อนไขมันเยอะและซับซ้อนมาก แนะนำให้ pass ไปให้ php ทำงานแล้ว return ค่าออกมาดีกว่าครับ
ครับขอบคุณครับ
ผมคิดว่ามันมี function sha1 ใน md5 ในที่เขียน nginx.conf เลยเพราะถ้าผมไม่เอา sha1 md5 มันก็ใส่
if($arg_val != $remote_addr) {
return 403;
}
ได้เลยแต่อยากได้ md5 sha1 ไปด้วยก็คิดว่ามันเรียกในงานได้ ยังไงเดี๋ยวผมลองไปงมศึกษาดูต่อแล้วกันครับ
sha1 md5 น่าจะพอทำได้ลองดู
http://www.goitworld.com/nginx-compile-options/
http://wiki.nginx.org/HttpSecureLinkModule
ไม่แน่ใจว่าใช้ได้เปล่า
ส่วน $arg_val มันเป็นตัวแปลที่ส่งผ่าน script มา
ถ้าส่งมาแบบ POST nginx ไม่น่าจะตรวจจับได้
แต่ถ้าส่งมาเป็นตัวแปลแบบ GET มันก็จะอยู่ใน URL แบบนี้ก็ใช้วิธีตรวจจับจาก URL Pattern ได้
แต่มันไม่ใช่การแปลง code php มาเป็น nginx
แต่เป็นการเขียน nginx ให้ตรวจสอบเงื่อนไขตามที่เรากำหนด