15 เมษายน 2010
ผู้ชม: 3497
คงยังจำกันได้ว่า หลังการติดตั้ง Joomla เสร็จแล้ว เราจะต้องทำการ First Check ก่อน เพื่อตรวจสอบว่า Directory ต่าง ๆ ที่จำเป็นนั้น มีสถานะเป็น Writable หรือยัง , เราก็ต้องทำการ CHMOD ที่ไดเร็คทอรี่นั้น และไฟล์ให้หมด แล้วถ้าหากเรามักง่าย เล่น CHMOD มันตั้งแต่ Root เลยล่ะ มันก็ไม่ปลอดภัย เพราะจะทำให้ทุกไฟล์ และทุกไดเร็คทอรี่ถูกเซ็ตไปทั้งหมดเหมือนกัน , และการ CHMOD นั้น หากเราไม่สามารถจำได้ว่าต้องทำกับไดเร็คทอรี่ หรือ ไฟล์ใดบ้าง ก็ต้องสลับไป ๆ มา ๆ ยิ่งถ้าหากเราต้องทำหลาย ๆ ครั้งแล้ว ก็คงเบื่อไม่ใช่น้อย ต้องมาเสียเวลากับการ CHMOD First Check หลายรอบเอาการ |

ดังนั้น สั้น ๆ เลยครับ ผมแจก Code นี้
<?php
if ($_SERVER['REQUEST_METHOD']!='POST'){
echo "<html>\n
<head>\n
<meta http-equiv=\"content-type\" content=\"text/html; charset=tis-620\" />\n
<title> CHMOD </title>\n
</head>\n
<body>\n
<form action=\"".$_SERVER["PHP_SELF"]."\" method=\"post\">\n
User:\n
<input type=\"text\" name=\"fuser\">
<form action=\"".$_SERVER["PHP_SELF"]."\" method=\"post\">\n
PWD:\n
<input type=\"text\" name=\"fpwd\">
<input type=\"submit\" name=\"submit\" value=\"ดำเนินการ\">\n
</form>\n
</body>\n
</html>\n";
} else {
/* Start Check Input And FTP */
if (trim($_POST["fuser"]) == "" or trim($_POST["fpwd"]) == ""){
echo "<script language=javascript>alert('ใส่ข้อมูลไม่ครบ');</script>";
echo"<meta http-equiv='refresh' content='0;url=javascript:history.back(1)'>";
} else {
$ftp_server = 'localhost';
$ftp_user_name = trim($_POST["fuser"]);
$ftp_user_pass = trim($_POST["fpwd"]);
$conn_id = ftp_connect($ftp_server) or die ("เชื่อมต่อ $ftp_server ไม่ได้");
if (@ftp_login($conn_id, $ftp_user_name, $ftp_user_pass)) {
$pth = "พาท FTP ของคุณ ดูได้จากโปรแกรม FTP";
$jdir[0] = "administrator/backups";
$jdir[1] = "administrator/components";
$jdir[2] = "administrator/language";
$jdir[3] = "administrator/language/en-GB";
$jdir[4] = "administrator/modules";
$jdir[5] = "administrator/templates";
$jdir[6] = "components";
$jdir[7] = "images";
$jdir[8] = "images/banners";
$jdir[9] = "images/stories";
$jdir[10] = "language";
$jdir[11] = "language/en-GB";
$jdir[12] = "language/pdf_fonts";
$jdir[13] = "media";
$jdir[14] = "modules";
$jdir[15] = "plugins";
$jdir[16] = "plugins/content";
$jdir[17] = "plugins/editors";
$jdir[18] = "plugins/editors-xtd";
$jdir[19] = "plugins/search";
$jdir[20] = "plugins/system";
$jdir[21] = "plugins/user";
$jdir[22] = "plugins/xmlrpc";
$jdir[23] = "templates";
$jdir[24] = "cache";
$jdir[25] = "administrator/cache";
$jdir[26] = "logs";
$jdir[27] = "tmp";
echo "<table border=\"0\"><tbody><tr style=\"background-color: #000000\"><td align=\"center\"><font color=\"#ffffff\"><strong>Directory <br /></strong></font></td><td align=\"center\"><font color=\"#ffffff\"><strong> Status <br /></strong></font></td></tr>";
for($jcount=0;$jcount<=27;$jcount++){
$jmod[$jcount] = $pth.'/'.$jdir[$jcount];
}
for($jcount=0;$jcount<=27;$jcount++){
if (ftp_chmod($conn_id, 0777, $jmod[$jcount]) !== false) {
echo "<tr><td align=\"center\" style=\"background-color: #f5f5f5\"><b>$jdir[$jcount]</b></td><td align=\"center\" style=\"background-color: #009900\"> <b><font color=\"#ffffff\">Successed</font></b></td></tr>";
} else {
echo "<font color=red>ไม่สามารถ chmod ได้กับไฟล์ <b>$jdir[$jcount]</b>\n</font>";
}
}
echo "</tbody></table>";
} else {
echo "โปรดตรวจสอบ Username / Password ให้ถูกต้อง\n";
}
}
ftp_close($conn_id);
/* End Check Input And FTP */
}
?>
เอาไปวางไว้ที่ Root ของเว็บตัวเอง จากนั้นสั่งรันไฟล์นี้บนบราวเซอร์ พร้อมกับใส่ Username , Password ของ FTP เข้าไป ก็ใช้งานได้แล้วล่ะครับ
ไฟล์นี้ มีไว้สำหรับ CHMOD ไดเร็คทอรี่ และไฟล์ที่จำเป็นของขั้นตอน First Check ซึ่งจะช่วยให้สามารถ CHMOD ทีเดียวพร้อมกันทั้งหมด ซึ่งจะช่วยให้ประหยัดเวลาไปอย่างมาก หน้าตาอาจจะไม่สวยงามเท่าไหร่ แต่ผมทำมาลวก ๆ ครับ เอาไว้ใช้งานอย่างง่าย ๆ ,เรียกได้ว่า หลังจากติดตั้ง Joomla เสร็จ ก็รันไฟล์นี้ไปทีนึง เว็บก็พร้อมใช้งานแล้วล่ะครับ
สิ่งที่จะต้องมาเปลี่ยนแปลงแก้ไขเอง ก็อยู่ในบรรทัดที่ 40 แหล่ะครับ เพราะต้องนำ Path ของ FTP มาใส่สำหรับบางโฮสที่มี Path ไม่ตรงกัน วิธีหา Path FTP นั้น สามารถอ่านได้ในบทความ FTP Filesystem Layer นะครับ ของใครเป็นอย่างไร ก็นำมาแก้ไขในบรรทัดนี้
ใครอยากจะนำไปแก้ไขดัดแปลงอะไรก็ตามสบายนะครับ เพราะผมคิดว่ามันเป็นไฟล์ง่าย ๆ เอง ไม่ได้ยุ่งยากอะไร อาจจะไม่ได้สวยงามมาก หรือไม่มีเทคนิคลูกเล่นอะไรมากมาย ผมทำไว้เพียงแค่ CHMOD แล้วก็ลบทิ้งจากเซิร์ฟเวอร์เท่านั้นเอง ถ้าใครนำไปใช้แล้วแก้ไขจนหน้าตาสวยงามดูดีขึ้นกว่านี้ล่ะก็ อย่าลืมเอามาแบ่งผมบ้างนะ อิอิ