เข้ารหัสภาษา php ป้องกันลูกค้าแก้ไขด้วย zend

zend on phpinfo

30 มิ.ย.53 กรณีที่โปรแกรมเมอร์ (Programmer) ต้องการพัฒนาเว็บไซต์ด้วยภาษา PHP และไม่ต้องการให้โปรแกรมเมอร์คนอื่น หรือลูกค้าที่ตนเองรับเงินมานำ Script ไปแก้ไขในภายหลัง จึงใช้โปรแกรม Zend Guard สำหรับเข้ารหัส (Encode) และใช้ Zend Optimizer สำหรับประมวลผล (Decode) เช่น นาย A เป็นโปรแกรมเมอร์รับเงินจากนาย B มาพัฒนาระบบด้วยภาษา PHP แต่ใช้โปรแกรมเข้ารหัสภาษา PHP ซึ่งตัว หนึ่งที่นิยมใช้กันมากคือ Zend Guard และจะประมวลผลได้กับเครื่องที่ติดตั้ง Zend Optimizer
     ตัวอย่าง Script ที่พัฒนาคือ <?=5;?> เมื่อใช้ Zend Guard จะได้แฟ้มใหม่ที่ใช้ editor เปิดอ่านแล้วไม่เข้าใจ และมีขนาด 2267 Bytes แต่ถ้าเปิดผ่าน web server ที่ติดตั้ง Zend Optimizer ก็พบกับเลข 5 ตามปกติ แต่จากการทดสอบใช้ Zend Guard 5.0.0 รุ่นทดลอง และใช้ Zend Optimizer 3.3.0 หลังจาก 14 วันผ่านไปจะพบคำว่า Fatal error: This file has expired. in C:\thaiabc\apache2\htdocs\zend_encode.php on line 0
     ในกรณีที่ใช้ Zend Guard 5.0.0 และใช้ Zend Optimizer รุ่นต่ำกว่า ก็พบว่ามีปัญหา หากจะใช้งานได้ต้อง Upgrade ตัวที่ใช้ Decode จากการทดสอบ Optimizer รุ่น 3.2.6 ไม่รองรับรุ่น 5.0.0 ซึ่ง Optimizer นั้นสามารถ Download มาใช้งานได้ฟรี แต่ Zend Guard มีราคาประมาณ 20,000 บาทต่อปี
+ http://www.zend.com/en/products/guard/downloads
+ http://www.brothersoft.com/zend-optimizer-274181.html
+ http://www.ioncube.com/

แก้ปัญหา Windows DNS ได้ 3 กรณี

nslookup on DOS

29 มิ.ย.53 ในสถาบันแห่งหนึ่งใช้ DNS 2 ตัว เป็น linux และ windows แต่เครื่องบริการที่ใช้ Windows DNS นั้น ถูกรายงานว่ามีปัญหาด้วยการตรวจสอบผ่าน intodns.com และพบสิ่งที่ต้องแก้ไขหลายกรณี ซึ่งปล่อยให้เป็นเช่นนี้มาแล้วระยะหนึ่ง มาวันนี้ผมกับคุณอนุชิตมีโอกาสเข้าไปตรวจสอบอย่างจริงจัง และแก้ไขปัญหาสำคัญได้ 3 กรณี ซึ่งเครื่องนี้ทำหน้าที่เป็น DNS, NAT, Load Balance ผ่าน ADSL + Leased Line, 2 Lan Card + 1 Blank Lan Card
     กรณีที่ 1 พบว่าตรวจสอบด้วย nslookup จากภายนอก พบว่าไอพีของเครื่องบริการ DNS มีถึง 6 IP และบางไอพีไม่มีความเป็นไปได้ที่จะให้บริการ พบว่า DNS Preference มีตัวเลือกที่ยอมให้ทุกไอพี หรือเฉพาะไอพีที่กำหนดเท่านั้นเป็นตัวให้บริการ เมื่อปล่อยให้ไอพีที่กำหนดเพียง 1 ip เป็นตัวให้บริการ ปัญหานี้ก็หมดไป กรณีที่ 2 ค่า Serial ของ Host ที่กำหนดใน SOA record เป็นข้อมูลที่ถูกใช้ในการจัดลำดับของ DNS ซึ่งเรามี 2 ตัว และรูปแบบที่กำหนดคือ YYYYMMDDnn พบว่าเดิมไม่กำหนด ทำให้การนำไปอ้างอิงมีความผิดพลาด กรณีที่ 3 ชื่อโฮสของ NS ซ้ำ เช่น h1.h1.domain.com ซึ่งไม่พบค่า config ใน DNS หรือ Firewall หลังตรวจสอบด้วย nslookup จากภายนอก แล้วพบว่า ไอพีที่ตอบกลับไม่สมเหตุสมผล ทำให้พบว่า การกำหนด Domain name ของเครื่องคอมพิวเตอร์ใน control panel system ระบุเกินกว่าที่ควร ทำให้ระบบอื่น ๆ นำค่าไปใช้อย่างไม่ถูกต้อง เมื่อแก้ไขเป็น domain.com แล้วทุกอย่างก็เข้าที่เข้าทาง

พัฒนา sitemap ไว้ใน intranet

เผยแพร่ sitemap ในระบบอินทราเน็ต

29 มิ.ย.53 ได้หารือกับ คุณธรณินทร์ แล้วทราบว่า sitemap ที่น่าสนใจ เป็นแบบของ tu และผมมีเวลาช่วงบ่าย จึงเข้าไปปรับเว็บเพจ sitemap ใน http://www.yonok.ac.th/intranet และเก็บรูปแบบนี้ไว้แยกออกมาอีกรุ่นหนึ่ง ที่ http://www.thaiall.com/yonok/intranet_530629.htm 
.. ดู ๆ ไปก็สวยนะครับ เป็นระเบียบเรียบร้อยดี แต่เผยแพร่ไม่ได้ เพราะปัญหาเชิงนโยบาย ทำให้ต้องเก็บไว้ดูในพื้นที่จำกัด ซึ่งขัดกับแนวคิดของอินเทอร์เน็ต

ติดตั้ง safari browser สำเร็จ

safari browser

28 มิ.ย.53 ติดตั้ง flash player 10.1 ให้กับ safari browser ของ apple.com ที่คุณธรณินทร์  สุรินทร์ปันยศ เคยใช้นำเสนอในการอบรมประกันคุณภาพระดับบุคคล ผมชอบตอนนำเสนอแบบจอภาพยนต์ (Show Top Sites) จึงทดสอบติดตั้ง ใช้งานและกำหนด Show Top Sites ของตนเอง เหตุยุ่งยากที่เกิดก็เพราะเครื่องติดตั้ง deepfreeze ทำให้ต้องปิดเปิดระบบแช่แข็ง สำหรับการติดตั้งโปรแกรมนี้ และทดสอบจนมั่นใจว่าไม่มีปัญหา แต่ตัวหลักของผมก็ยังใช้ ie6 เพราะมีแผนติดตั้ง chrome กับ firefox เพิ่มเติม .. เพื่อให้ผลลัพธ์เว็บเพจตรวจสอบ PR ตามแนวการพัฒนาเว็บไซต์ให้เข้ากับ SEO ได้

การเตรียมปรับเว็บเพจแบบสแตติกหลายร้อยหน้า

26 มิ.ย.53 เริ่มต้นจากการมีรายชื่อเว็บเพจในเครื่องบริการอยู่ 100 เว็บเพจที่เป็นแบบสแตติกในเครื่อง remote และมีเหมือนกันในเครื่อง local แต่เครื่อง local มีหลายพันแฟ้ม ซึ่งปนกันระหว่างเว็บเพจเป้าหมายที่ต้องการปรับกับเว็บเพจที่มีทั้งหมด จึงย้ายห้อง local ไปเป็นห้องสำรอง สิ่งที่ต้องการคือคัดแยกเว็บเพจเป้าหมายไปอยู่ใน folder เป้าหมาย เพราะ filezilla จะช่วย upload โดยเลือก folder และส่งแฟ้มทั้งหมดจาก local ไปยัง remote ได้ง่าย ถ้าปนกันจะจัดการได้ยากกว่า
     ดำเนินการ 1) สร้าง folder เฉพาะที่มีแฟ้มเป้าหมาย โดยนำรายชื่อ url ทั้งหมดเข้าไปจัดการใน excel เพื่อให้ได้ DOS code สำหรับสร้าง folder เช่น mkdir c:\thaiall.com\article ซึ่งผมมี folder เป้าหมาย 43 folder เก็บแฟ้มเป้าหมายไว้ 100 แฟ้ม แล้วคัดลอกจาก excel ไปวางใน cmd ก็จะได้ folder ทั้งหมดทันที 2) คัดลอกแฟ้มเป้าหมายจากห้องสำรองมาไว้ใน folder หลัก โดยนำรายชื่อ url ทั้งหมดเข้าไปจัดการใน excel ก็จะได้คำสั่ง DOS เช่น copy c:\bak\x.htm c:\thaiall\article\x.htm แบบนี้จำนวน 100 บรรทัด เมื่อคัดลอกจาก excel มาวางใน cmd ก็จะได้แฟ้มเป้าหมายในห้องใหม่เรียบร้อย 3) ใช้ search ของ windows หรือเปิดผ่าน batch file สั่งเปิดแฟ้มเป้าหมายทั้ง 100 แฟ้มใน editplus แล้วแก้ไขด้วย replace all เพียงเท่านี้แฟ้มเป้าหมายก็จะถูกเปลี่ยนแปลงอย่างถูกต้อง 4) พบว่า filezilla มีความสามารถ import หรือ export รายการ transfer เป็นแฟ้มแบบ xml ได้ ผมนำแฟ้มที่ export ไปเปิดใน excel แต่มีรายละเอียดมาก และคิดว่าคงใช้ไม่บ่อย ที่สำคัญมีรหัสผ่านที่เข้ารหัสไว้ สำหรับใช้เชื่อมต่อเครื่องบริการ เก็บไว้ในแฟ้มนี้ จึงไม่ดำเนินการสร้างรายการนี้เก็บไว้ 5) ใช้ filezilla ส่งทุกอย่างจากห้อง c:\thaiall ไปในเครื่อง remote เป็นการเขียนทับเฉพาะ 100 แฟ้มเป้าหมายในเครื่อง remote สรุปผลว่าบรรลุวัตถุประสงค์ของการจัดการครั้งนี้
     อันที่จริง ผมอยากเขียนเล่ารายละเอียดที่ต้องปรับ 100 เว็บเพจ แต่มีคนห้ามไว้เป็นลายลักษณ์อักษร จึงเล่าได้เพียงกระบวนการ ส่วนที่มา และที่ไป ขอไม่กล่าวถึงนะครับ .. แต่จะพยายามแยกส่วนของที่มา กับที่ไปมาเล่าสู่กันฟัง เพราะเป็นกรณีศึกษาที่ดีที่ผมควรจดจำและบอกต่อในตอนที่ยังมีโอกาสครับ
+ http://www.thaiall.com/updateazmz.htm

กิจกรรม proj, job, lib, seo, regist, smart card

ภาพระหว่างเดิน และผลพวงของกิจกรรม

25 มิ.ย.53 เช้ามาก็ประชุมทีมเรื่องเตรียมอบรม น.ศ.ด้านไอทีกับทีม แล้วไปดูปัญหา contact ของ gmail.com ให้ผู้ใหญ่ใจดี พบไก่แจ้แสนน่ารัก  แล้วคุณตุ้ยก็ชวนหารือปัญหาย้ายข้อมูลจาก hd2notebook ของ อ.นุ้ย และ dns และ blue screen ของ ph และตำแหน่ง web lib หายอีก แล้วยกร่างแผนระบบสารสนเทศโดยคุยกับ อ.ภาณี และเสนออ.อติชาต ลงนาม แล้วก็ติดตามบันทึกเปิดห้องบริการและคู่มือไอทีกับคุณเอก แล้วหัวหน้าก็เรียกไปชี้แจงเรื่อง smart card ล้านกว่า ต้องหาข้อมูลคอม 92 เครื่องกับคุณแบงค์ แล้วคุณแนนก็ขอกุญแจเข้าห้องใช้วันเสาร์เพราะมี com-link มาดูห้อง แล้วก็คุยปัญหา online reg กับ หัวหน้า อ.อติชาต คุณน้อย คุณปริศนา และคุณกาน แล้วก็คุยเรื่องมาตรฐานการตัดเกรดที่ น.ศ.สงสัย เพราะจำนวนครั้งที่นำเสนอ กับความสามารถในการนำเสนอให้อาจารย์เข้าใจ ซึ่งสองในหลายเงื่อนไขที่ทีมอาจารย์ใช้เป็นเกณฑ์การพิจารณา แล้วบริษัท logistic โทรมาเรื่อง php decode ก็โยนงานให้คุณกรรับ job ไป แล้วเย็นมาก็โยนงานของ cmucs ให้คุณกรรับไปอีกชิ้น แล้วที่โรงเรียนเด็กได้เก็บภาพที่ 1 พีพีป.5 คัดไทยสุนทรภู่มาได้ แล้วดึกหน่อยก็เคลียร์สัญญา seo 9 หน้าของ aun .. เขียนละเอียดคงใช้เวลามาก ผมจึงเข้ารหัสไว้ อ่านเข้าใจยากหน่อยนะครับ

การปรับปรุงเว็บเพจแบบ static จำนวน 100 เว็บเพจ

filezilla

24 มิ.ย.53 มีโอกาสต้องแก้ไขแฟ้มจำนวน 100 เว็บเพจที่เป็นแบบ static และอยู่ใน folder แตกต่างกัน จึงใช้วิธีเปิดแฟ้มผ่านโปรแกรมแบบ batch เพื่อเปิดแฟ้มทั้งหมดพร้อมกัน ด้วยการสั่งให้ editplus เปิดแฟ้มทั้งหมด แล้วจัดการทุกแฟ้มพร้อมกันได้ง่าย (ต้อง regist โปรแกรมก่อนนะครับ ไม่งั้นเปิดทีเดียว 100 แฟ้มไม่ได้) สิ่งที่ต้องการจัดการคือ sponsor frame ผลการทดสอบใช้ editplus พบว่า editplus สามารถรองรับแฟ้มจำนวน 100 แฟ้มได้ เมื่อแก้ไขจนแล้วเสร็จ ก็ใช้ filezilla สั่ง upload folder ทั้งหมด พบว่า สามารถส่งแฟ้มที่ใหม่กว่าเข้าไปทับแฟ้มเก่าได้อัตโนมัติ ผมเพียงแต่เลือก folder ทั้งหมด แล้ว upload ด้วยโปรแกรม filezilla ซึ่งทำหน้าที่เลือกเฉพาะแฟ้มที่ใหม่กว่าในแต่ละ folder ไปทับแฟ้มเก่ากว่าใน folder ของเครื่องที่ทำการ remote เข้าไป .. มีผลถูกต้อง
เช่น “C:\Program Files\EditPlus 2\editplus.exe” d:/thaiall.com/thai/kingsong.htm

เน็ตที่หอพักเสีย การ monitor และ nslookup

3ห่วงกับเพื่อน ๆ

22 มิ.ย.53 นักศึกษาที่คุณธรณินทร์ให้การดูแลที่หอพักหญิงหลายคน ให้ข้อมูลว่า net ใช้แล้วมีปัญหา แบบใช้สักพักก็หลุด และเป็นกันหลายคน ดังนั้นคุณอนุชิต จึงไปตรวจสอบแล้วพบว่า switch ที่เชื่อม access point ทั้งหมดเสีย แล้วได้ทำงานร่วมกับคุณอรรถชัย เพื่อแก้ปัญหาให้ตรงจุด เมื่อตรวจตามหลักการทำงาน 3 ห่วงคือ monitor, innovation และ service ที่เผยแพร่ใน http://www.thaiall.com/article/center.htm พบว่า ระบบ monitor ที่เป็นการตรวจสอบการสะท้อนกลับผ่านการ ping ไปยังอุปกรณ์และคอมพิวเตอร์ที่มีทั้งหมดในองค์กร พบว่าเว็บเพจสำหรับตรวจสอบ ขาดคุณสมบัติการตรวจ access point ผมจึงแก้ไข /log ให้เลือกตรวจเครื่องในหน่วยงาน หรือตรวจ access point เมื่อกลับไปที่บ้านแล้วใช้คำสั่ง nslookup แบบกำหนด server พบว่า dns ตัวหนึ่งของเรามีตัวหนึ่งที่ต้องแก้ไข  เพราะปัญหาหอพักแก้ได้ด้วยการซื้อ switch ใหม่ ปัญหาไม่มีระบบ monitor ก็พัฒนา script แล้ว แต่ปัญหา dns ตัวหนึ่งไม่บริการนอกองค์กรอย่างถูกต้อง จะต้องตรวจสอบเพิ่มเติม

โปรแกรม cam studio ใช้ record windows screen

camstudio และ thaicyberu.go.th

19 มิ.ย.53 เนื่องจากคุณตุ้ย เข้าไปเรียน e-learning กับ thaicyberu.go.th เป็นหนึ่งในเพื่อนหลายท่านที่เข้าไปเรียน เช่น อ.ภาณี และ อ.เก๋ แล้วคุณตุ้ยพบว่าเว็บไซต์นี้ใช้สื่อแบบหนึ่งคือ การสอนด้วยวีดีโอที่ capture หน้าจอ และมีเสียงอธิบายเป็น wmv จึงสนใจอยากพัฒนาขึ้นมา เพื่อใช้เป็นสื่อการสอนในมหาวิทยาลัย สำหรับให้คำแนะนำเจ้าหน้าที่ เช่น ติดตั้งเครื่องพิมพ์ เป็นต้น ผมจึงแนะนำไปว่าใช้ cam studio ซึ่งเป็น open source ที่ download ได้จาก http://camstudio.org ขนาด 1.3 MB
     โปรแกรมนี้ช่วยบันทึกการทำงานบนจอภาพเป็นแฟ้มแบบ .avi หรือ .swf ซึ่งแนะนำให้บันทึกเป็น avi แล้วนำไปใช้ใน windows movie maker แล้วบันทึกเสียงในโปรแกรมนี้ ซึ่งเป็นการเติมเสียงหลังจากบันทึกวีดีโอเสร็จแล้ว ทำให้สามารถเตรียมตัวได้ดีกว่า การบันทึกวีดีโอไปพร้อมกับการบันทึกเสียง หากจะทำวีดีโอแบบ screen recording ควรเขียน script และแบ่งวีดีโอออกเป็นเรื่อง เพื่อให้ผู้ใช้เลือกเปิดดูหรือพัฒนาตามเรื่องได้ง่าย ซึ่งจะง่ายกว่าการทำเป็นเรื่องยาวเรื่องเดียว

ทำสิ่งที่เป็นไปไม่ได้ กับโฮมเพจคณะ

16 มิ.ย.53 วันนี้หัวหน้าขอให้ผมทำสิ่งที่เป็นไปไม่ได้อีกครั้ง (mission impossible) แต่ผมก็ทำให้เท่าที่ทำได้ เพราะหัวหน้าเคยขอสิ่งนี้จากผู้บริหารท่านหนึ่ง แต่หัวหน้าก็บ่นว่าไม่เห็นผลเท่าที่คาดหวัง ดูเหมือนต้องการให้ผมทำภารกิจที่เป็นไปไม่ได้นี้อีกครั้ง สิ่งที่ต้องการคือ เว็บเพจรับสมัครงานของคณะ ที่จัดเป็นแหล่งให้ข้อมูลตำแหน่งงานแก่ศิษย์เก่าเพื่อส่งเสริมให้นักศึกษามีงานทำเพิ่มขึ้น
     เนื่องจากเรารู้ว่าไม่สามารถปรับ design โฮมเพจของคณะเราได้ จึงใช้โฮมเพจเดิมที่สมบูรณ์กว่าด้วยระบบกราฟฟิก และแบ็คออฟฟิสที่ นายแบงค์พัฒนาไว้ แล้วผมก็เชื่อมโยงลิงค์เข้าระบบ forum หัวข้อ หางาน เข้ากับเว็บเพจของคณะวิชา แล้วเพิ่มข้อมูลเกี่ยวกับตำแหน่งงานที่น่าสนใจ เพียงเท่านี้ก็น่าจะบรรลุตามความต้องการของหัวหน้าได้ระดับหนึ่ง แต่ mission impossible ยังคงเป็นตามนั้น คือ การดำเนินการนี้ไม่มีผลต่อการรับรู้ของศิษย์เก่า หรือผู้สนใจทั่วไปในบทบาทของโฮมเพจคณะอย่างเป็นทางการ .. ผู้อ่านคงงง กับที่ผมเล่ามานี้ เพราะมีประเด็นเรื่องมนุษย์กับคำว่ามากคนก็มากความเข้ามาเป็นปัจจัยครับ