พื้นฐาน Joomla

จัดการ Cache ของ Joomla
Cache (แคช) เป็นวิธีการหนึ่งที่ Joomla ได้นำมาให้ผู้ใช้งานได้เลือกใช้ เพื่อความรวดเร็วในการเข้า...

เทคนิค Joomla

SH404SEF ตอน Custom META
หลังจากที่ได้ติดตั้งคอมโพเน้นท์ sh404SEF กันไปแล้ว ก็ต้องมาปรับแต่งการใช้งานกันหน่อย ซึ่งเทคนิค...

แนะนำ Extension

แสดงลิส QCategories
QCategories โมดูลสำหรับแสดงจำนวนเนื้อหาใน Category ภายใต้ Section ที่เราเลือกครับ โดยจะแสดงออก...
( 2 Votes )
Auto CHMOD คงยังจำกันได้ว่า หลังการติดตั้ง Joomla เสร็จแล้ว เราจะต้องทำการ First Check ก่อน เพื่อตรวจสอบว่า Directory ต่าง ๆ ที่จำเป็นนั้น มีสถานะเป็น Writable หรือยัง , เราก็ต้องทำการ CHMOD ที่ไดเร็คทอรี่นั้น และไฟล์ให้หมด แล้วถ้าหากเรามักง่าย เล่น CHMOD มันตั้งแต่ Root เลยล่ะ มันก็ไม่ปลอดภัย เพราะจะทำให้ทุกไฟล์ และทุกไดเร็คทอรี่ถูกเซ็ตไปทั้งหมดเหมือนกัน , และการ CHMOD นั้น หากเราไม่สามารถจำได้ว่าต้องทำกับไดเร็คทอรี่ หรือ ไฟล์ใดบ้าง ก็ต้องสลับไป ๆ มา ๆ ยิ่งถ้าหากเราต้องทำหลาย ๆ ครั้งแล้ว ก็คงเบื่อไม่ใช่น้อย ต้องมาเสียเวลากับการ CHMOD First Check หลายรอบเอาการ

first_check02

ดังนั้น สั้น ๆ เลยครับ ผมแจก 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 แล้วก็ลบทิ้งจากเซิร์ฟเวอร์เท่านั้นเอง ถ้าใครนำไปใช้แล้วแก้ไขจนหน้าตาสวยงามดูดีขึ้นกว่านี้ล่ะก็ อย่าลืมเอามาแบ่งผมบ้างนะ อิอิ

แจก สคริป CHMOD Directory Permission