|
|
|
การเปลียนสิทธิ์โดย chmod และ ftp_site ไม่ได้ทั้งคู่เลย ใครมีประสบการณ์ช่วยหน่อยครับ |
|
|
|
|
|
|
|
ที่มาของความต้องการคือ ผมเขียนโปรแกรมเก็บข้อความลง database และอัพไฟล์แนบ เอกสาร,รูป ใน Directory ชื่อ upload
แน่นอนว่า Directory ชื่อ upload กำหนดสิทธิ์เป็น 777 โดยผมกำหนดสิทธิ์ผ่าน CuteFTP ได้ไม่มีปัญหาแต่อย่างใด
ความต้องการมันเกิดเมื่ออาทิตย์ก่อน Server ฮาร์ดดิสก์พัง และต้องย้าย Server ผลก็คือสิทธิ์ของ Directory ชื่อ upload
เปลี่ยนเป็น 755 ยูสเซอร์ทำงานไม่ได้ วันนั้นผมลาหยุดด้วย มาทราบเรื่องตอนเย็นน้องโทรมาบอก เลยเปลี่ยนสิทธิ์ให้ที่บ้าน
โดยทำผ่านเว็บใช้ ftp2net
ผมเลยเกิดความคิดว่าจะเขียน script ให้ตรวจสอบสิทธิ์ Directory ชื่อ upload ก่อนว่าเป็น 777 หรือไม่ ถ้าไม่เป็นก็เปลี่ยนสิทธิ์
เพราะว่า Module ในลักษณะการ upload แบบนี้ผมมีอยู่ 4 และมีย่อยข้างในอีก เลยอยากจะทำให้มันสมบูรณ์แบบ ไม่ต้องไล่เปลี่ยนสิทธิ์ทุกครั้ง
นี่คือคำสั่ง chmod ต่างๆ ที่ผมลองทำตามเว็บ php ที่ได้ลองไป ไม่เวิร์กเลย ยังคงเป็น 755 เหมือนเดิม
chmod("/uload", 777);
chmod("uload/", 777);
chmod("/home/myweb/mymodule/uload/", 777);
chmod("/uload", 0777);
chmod("uload/", 0777);
chmod("/home/myweb/mymodule/uload/", 0777);
เลยลองเปลี่ยนมาใช้ ftp แต่ผมลองดักจับ error มัน fail ที่บรรทัดที่สองคือ ล็อกอินไม่ผ่าน
$conn_id = ftp_connect("$servername");
ftp_login($conn_id, "username", "password");
ftp_site($conn_id, 'chmod 0777 upload/');
ftp_close($conn_id);
จะบอกว่า username password ผิดก็คงไม่ใช่เพราะผมดูแล้วดูอีก และใช้กับ cuteFTP ที่ทำงานประจำ
และจะบอกว่า server ไม่อนุญาตให้ทำผ่านเวบก็คงไม่ใช่ เพราะผมใช้ ftp2net ทำจากที่บ้านได้ แต่ผมแกะ code ftp2net ไม่ไหว
เกินความสามารถจริง ๆ
มีท่านใดที่เจอปัญหาแบบนี้บ้าง ช่วยหน่อยครับ
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2010-12-05 15:17:33 |
By :
jackal |
View :
1132 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองถอด ดับเบิลควอท ftp_connect("$servername"); ==> ftp_connect($servername);
|
|
|
|
|
Date :
2012-03-29 01:07:57 |
By :
ataaha |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|