Author Archive Support Dept

Fatal Error: Allowed Memory size Exhausted WordPress

ปัญหานี้เป็นอีกปัญหายอดฮิตที่ผมเจอบ่อยมาก สาเหตุส่วนใหญ่มาจากการตั้งค่าโฮสที่ไม่เหมาะสมกับ WordPress พอเราใช้งานเว็บไปสักพักก็จะเจอข้อความคล้าย ๆ แบบนี้โผล่ขึ้นมา

FATAL ERROR: ALLOWED MEMORY SIZE OF 86735766 BYTES EXHAUSTED

อาการนี้มันจะเป็น ๆ หาย ๆ ซึ่งผมเองได้พบวิธีแก้ไขปัญหานี้อยู่ 2 วิธีดังนี้ครับ

วิธีที่ 1.เพิ่มโค๊ดบรรทัดนี้เข้าไปที่ไฟล์ wp-config.php

define( 'WP_MEMORY_LIMIT', '1024M' );

วิธีที่ 2.แจ้งมายัง Standhost ครับ

ถ้าลองวิธีที่ 1 แล้วยังไม่ได้วิธีสุดท้ายคือแจ้งโฮสที่เราใช้งานอยู่ให้ทางโฮสเค้าแก้ให้ครับ อาจต้องมีการปรับคอนฟิกเพื่อลูกค้าครับ สำหรับลูกค้า Standhost นะครับ 🙂

จบแล้ว

ขอบคุณบทความดี ๆ จาก CodingDee ครับ

WP Optimize ปลั๊กอินกำจัดขยะสำหรับเวิร์ดเพรส

WP Optimize ลงปลั๊กอินนี้ไว้เปรียบเสมือนมีแม่บ้านประจำตัว ที่จะคอย ปัด กวาด เช็ด ถู ช่วยให้ Database เราสะอาดไม่รกรุงรังอีกต่อไป แถมขนาดของ Database ก็เล็กลงด้วยนะ ส่งผลให้เว็บเราทำงานได้เร็วขึ้น ผมนำไปติดตั้งให้กับเว็บลูกค้าที่ผมดูแลอยู่โดยก่อนใช้ปลั๊กอิน Database มีขนาด 1 GB ใหญ่มาก ๆ เว็บลูกค้าเป็นเว็บบทความปกตินะครับไม่ใช่เว็บ E-Commerce หลังจากที่ผมลงปลั๊กอิน WP Optimize แล้ว ขนาดของ Database เหลืออยู่เพียง 24 MB เท่านั้นลดลง 900 MB เลย

ทำไม Database ถึงมีขนาดใหญ่ ?

เพราะทุก ๆ การกระทำที่เราทำลงไปในเว็บไม่ว่าจะเป็น สร้างบทความ แก้ไขบทความ อัพรูปภาพ สร้างสินค้า ลงปลั๊กอิน มันจะมีข้อมูลที่ยังคงค้างอยู่ใน Database เราเช่นเวลาเราเขียนบทความตัวระบบของ WordPress เองก็จะมีการสร้าง Revision ขึ้นมาสำหรับสำรองข้อมูลที่เราเขียนลงไปเป็นหลาย ๆ เวอร์ชั่นก็ส่งผลให้ขนาดของ Database เราใหญ่ขึ้นเรื่อย ๆ หรือเวลาเราติดตั้งปลั๊กอินก็เหมือนกัน ปลั๊กอินบางตัวจะมีการบันทึกข้อมูลสำหรับการตั้งค่าต่าง ๆ ที่เรากำหนดไว้ของตัวปลั๊กอินลงใน Database เหมือนกัน บางปลั๊กอินถ้าผู้พัฒนาเค้าเขียนมาดีมันก็จะลบข้อมูลพวกนี้ออกไปให้เวลาเราลบปลั๊กอินแต่ส่วนมากมันไม่ได้ลบออกไปด้วยก็ส่งผลให้ Database เราบวมได้เหมือนกัน

ใครใช้ WooCommerce ควรลง

สำหรับร้านค้าที่ใช้ WooCommerce ควรจะลงไว้ครับเพราะ WooCommerce เองมันมีฟีเจอร์ Geo Location สำหรับเก็บข้อมูล Location และ IP Address ของ User ที่เข้ามาใช้งานเว็บเราไว้ทำให้ Database เราจะมีขนาดใหญ่กว่าปกติตัวปลั๊กอินก็จะช่วยตรงนี้ได้ครับ

ติดตั้งปลั๊กอิน

โหลดได้ที่นี่ คลิก

วิธีใช้งาน

หลังจากติดตั้งแล้วให้เราสังเกตจะมีเมนู WP Optimize โผล่ขึ้นมา คลิกเข้าไปเลยแล้วจะเจอหน้าตาสำหรับการตั้งค่าประมาณนี้ (ตั้งค่าตามภาพได้เลย) สำหรับใครที่ไม่ต้องการลบ Draft Post (ฉบับร่าง) ไม่ต้องคลิก Clean all auto-drafts and trashed posts นะครับ

(อย่าลืม Backup ก่อนทุกครั้งนะครับ) แล้วกด Run all selected optimisations ได้เลย

ตั้งเวลา Optimize

เราสามารถตั้งเวลาให้ปลั๊กอิน Optimize Database ให้เราได้ด้วยจะได้ไม่ต้องมาคอยกด Optimize เองยิ่งใครมีเว็บที่ต้องดูแลเยอะ ๆ นี้สบายเลย ตั้งเป็น วันละครั้ง อาทิตย์ละครั้ง เดือนละครั้ง ก็ตามใจเราเลย โดยจากภาพผมตั้งไว้ที่ อาทิตย์ละ 1 ครั้งครับ

จบแล้ว

ขอบคุณบทความดี ๆ จาก CodingDee ครับ

Invisible reCaptcha ปลั๊กอินป้องกันสแปมสำหรับ WordPress

Invisible reCaptcha ปลั๊กอินสุดเจ๋งที่ช่วยป้องกันสแปมสำหรับ WordPress ก่อนหน้าที่ผมจะเปลี่ยนมาใช้ Invisible reCaptcha นั้นผมใช้ reCaptcha เวอร์ชั่นเก่าอยู่ก่อนหน้านี้อยู่แล้ว เวอร์ชั่นที่ให้เรากดเลือกรูปนั่นแหละ…

Invisible reCaptcha For WordPress

ปัญหาอีกข้อที่ผมเจอเมื่อเราใส่ captcha ไว้ตามหน้าแบบฟอร์มต่าง ๆ ไม่ว่าจะเป็น หน้าฟอร์มสมัครสมาชิก หน้าฟอร์มติดต่อเรา หน้าฟอร์มคอมเมนต์ เป็นต้น ปัญหาที่ตามมาคือการที่ user ถูกขัดจังหวะการใช้งานนั่นเอง ผมเคยเจอบางเว็บใส่ captcha ไว้หน้าสั่งซื้อด้วยก็มีนะ ทีนี้พอ user ถูกขัดจังหวะบางคนเค้าปิดหน้าเว็บทิ้งไปเลย ถ้าเป็นหน้าสั่งซื้อกรอกแล้วไม่ผ่านติด captcha เค้าก็ปิดเว็บออกไปเลยทำให้เราสูญเสียรายได้ ขอยกเคสที่ผมเจอคือผมใส่ Google reCaptcha ไว้ที่หน้าสมัครตัวแทนจำหน่ายที่เราจะต้องกดติ๊กถูกก่อน submit ฟอร์มนั่นแหละ ผมเองก็คิดว่ามันง่ายในระดับแล้วนะ มันต้องมากรอก ตัวอักษร ตัวเลข แต่ปรากฎว่ามีลูกค้าโทรศัพท์เข้าที่บริษัทค่อนข้างบ่อย บอกว่ากด สมัครตัวแทนไม่ได้ ผมก็สงสัยว่าเพราะอะไรเค้าถึงกดสมัครไม่ได้ ผมลองใช้งานดูมันก็สมัครได้นะ ไม่ติดปัญหาอะไรแล้วทำไมลูกค้าเรากดสมัครไม่ได้ งงสิครับทีนี้ ไม่รู้จะวิเคราะห์หาสาเหตุยังไง

ผมนึกขึ้นได้ว่าเว็บเราติด Hotjar ไว้นี่หว่า ( Hotjar คือ เครื่องมือวิเคราะห์การใช้งานของ user ในเว็บเราว่าเค้า คลิกส่วนไหนของเว็บบ้าง ไม่ว่าจะเป็น ปุ่ม ลิงก์ หรือเลื่อนเมาส์ไปส่วนไหนของหน้าจอ ฯลฯ ไว้จะเล่ารายละเอียดให้ฟังวันหลังนะครับ ) พอผมมาเปิดดู history การใช้งานหน้าแบบฟอร์มสมัครตัวแทนจำหน่าย ปรากฏว่าแทบไม่มีการคลิกที่ช่องสี่เหลี่ยมของ captcha เลย นั่นแหละสาเหตุที่สมัครไม่ผ่าน ทั้งที่ผมเขียนบอกไว้ชัดเจนว่าให้คลิกที่ช่องสี่เหลี่ยมตรงนี้ก่อนนะ แต่ก็อย่างว่าละครับ ความปลอดภัยและความสะดวกสบายมักจะสวนทางกันเสมอ ถ้าเราไม่ติด captcha ลูกค้าก็ใช้งานได้ง่ายขึ้นแต่ก็เสี่ยงจะโดน spam แบบนี้เราควรจะเลือกวิธีไหนดี

สุดท้ายก็หาวิธีแก้ปัญหานี้ได้นั่นก็คือ Invisible reCaptcha ซึ่งมันก็คือ reCaptcha ที่พัฒนาให้ใช้งานง่ายขึ้นโดยที่มีการขัดจังหวะการใช้งานของ user น้อยลงกว่าเดิมนั่นเอง คือ user ไม่ต้องกดอะไรเลย กรอกฟอร์มเสร็จกด submit แค่นั้นจบเลย

ผมไม่รอช้ารีบถอด Google reCaptcha เวอร์ชั่นเดิมออกแล้วเปลี่ยนมาใช้ Invisble reCaptcha อย่างไวปรากฎว่าหลังจากนั้นไม่มีลูกค้าโทรเข้ามาที่บริษัทว่าสมัครตัวแทนไม่ผ่านอีกเลย ย้ำว่าไม่มีเลยนะครับ และอัตราการสมัครตัวแทนจำหน่ายก็เพิ่มมากขึ้นกว่าเดิมอีกด้วยและไม่มี spam เลย win win ทั้งฝั่งเราและลูกค้า

ข้อดีของปลั๊กอินนี้

  1. ไม่ขัดจังหวะการใช้งานของ User UX ดีขึ้นแน่นอน
  2. สามารถใช้งานร่วมกับ WooCommerce ได้
  3. สามารถใช้งานร่วมกับ BuddyPress ได้
  4. สามารถใช้งานร่วมกับ ContactForm7 และ Gravity Form ได้
  5. สามารถใช้งานร่วมกับ Seed Confirm Pro ได้

เล่าเรื่องมาพอสมควร (เหรอ) มาดูวิธีใช้งานกันครับ

สร้าง API Key สำหรับใช้งาน captcha กับเว็บเรา

  • คลิก แล้ว login ด้วย Gmail เข้าไปได้เลย
  • เสร็จแล้วกรอกข้อมูลลงไปดูตัวอย่างตามภาพด้านล่าง
  • Label คือชื่อสำหรับ captcha ที่เราสร้างขึ้นมากรอกเป็นชื่ออะไรก็ได้ผมกรอกเป็น CodingDee.com
  • เลือก Invisible reCAPTCHA
  • Domains กรอกชื่อเว็บที่เราต้องการใช้งานลงไป จริง ๆ สามารถกรอกได้มากกว่าหนึ่งเว็บใครใช้หลายเว็บก็ใส่ลงไป 1 บรรทัดต่อ 1 เว็บ สำหรับผมใช้เว็บเดียว
  • กดยอมรับเงื่อนไขการใช้งาน
  • กด Register

เสร็จแล้วเราจะได้ Site key และ Secret key มาตามภาพ

เข้าไปที่หลังบ้าน Settings >> Invisible reCaptcha

  • นำ Site key และ Secret key กรอกลงไปตามภาพ

  • Badge Position สามารถเลือกได้ 3 ตำแหน่งว่าเราต้องการให้ captcha อยู่ส่วนไหนของฟอร์ม ผมเลือกมุมขวาล่าง
  • เสร็จแล้วกดบันทึก

Tab WordPress

สำหรับส่วนนี้ปลั๊กอินจะมีให้เราเลือกว่าต้องการให้มี captcha ที่ส่วนไหนบ้าง เช่น

  • หน้า Login
  • หน้า Register
  • Comment
  • หน้าลืมรหัสผ่าน

สำหรับผมเปิดหมดทุกหน้าเลย

Tab WooCommerce

ส่วนนี้สำหรับใครที่ใช้ WooCommerce ก็สามารถมาเปิดใช้งานตรงส่วนนี้ได้ครับ

  • หน้า WooCommerce Login
  • หน้า WooCommerce Register
  • หน้าลืมรหัสผ่าน
  • ส่วนของ Comment และรีวิวสินค้า

Tab BuddyPress

ส่วนนี้สำหรับใครที่ใช้ BuddyPress

Tab Contact Forms

ส่วนนี้ผมชอบมากสามารถใช้ร่วมกันกับปลั๊กอินฟอร์มอื่น ๆ ได้ เช่น ContactForm7 GravityForm เป็นต้น

ทดลองเข้าหน้า Login ดูเราก็จะพบกับ captcha ที่โผล่ขึ้นมาตามภาพ

หน้าแจ้งชำระเงินผมใช้ Seed Confirm Pro

สำหรับใครที่ใช้ seed confirm pro อยู่ก็จะได้ captcha เพิ่มเข้ามาให้อัตโนมัติตามภาพครับ

จบแล้ว

ขอบคุณบทความดี ๆ จาก CodingDee  ครับ

Facebook Share รูปไม่ขึ้นและวิธีแก้ไข

facebook share รูปไม่ขึ้น นี่เป็นอีกหนึ่งปัญหาที่เจอได้บ่อย ๆ เมื่อเราแชร์บทความจากเว็บไปที่ facebook บทความนี้จะพามาดูวิธีแก้ไขว่าทำอย่างไร

Facebook Share รูปไม่ขึ้นและวิธีแก้ไข

สำหรับวิธีแก้ไขเมื่อ facebook share รูปไม่ขึ้น เราสามารถทำตาม 4 ขั้นตอนนี้ได้เลยครับ

  1. เข้าไปที่ Sharing Debugger
  2. เลือกแท็บ Sharing Debugger และใส่ Url ที่เราต้องการจะแชร์ลงไปแล้วกด Debug
  3. ระบบจะดึงข้อมูลที่เกี่ยวกับ Url นี้เช่น ชื่อบทความ รูปภาพ รายละเอียดบทความ ขึ้นมาให้เราดู ถ้ารูปภาพยังไม่ขึ้น ให้กดที่ปุ่ม Scrape Again บางทีอาจต้องกดหลาย ๆ ครั้งหน่อยกว่ารูปจะขึ้น
  4. จบแล้ว ง่ายใช่ไหม คราวนี้เราก็เอา Url นี้ไปโพสหรือแชร์ต่อใน Facebook ได้แล้วครับ

จบแล้ว

ขอบคุณบทความดี ๆ จาก CodingDee  ครับ

เสริมเกราะให้เวิร์ดเพรสด้วย iThemes Security ตอนที่ 1

วันนี้ผมมีวิธีตั้งค่า Plugin iThemes Security มาฝากครับ ถ้าอ่านบทความนี้จบ และเอาไปปรับใช้กับ เว็บไซต์ของคุณ ผมรับรองได้เลยว่าเว็บไซต์ของคุณจะมีความปลอดภัยเพิ่มมากขึ้นแน่นอน

WordPress โดนแฮค ทำยังไงดีครับ

นี่เป็นอีกคำถามที่ผมเจอบ่อยมาก โดยอาการที่เจอก็จะแตกต่างกันไป ตั้งแต่ หน้าเว็บโดน Redirect ไปเว็บอื่น ,เข้าเว็บแล้วโดน Google เตือนว่าเว็บไม่ปลอดภัย, โดนวาง Backlink ไปเว็บ 18+ บลาๆๆ แล้วแต่ว่าใครจะโดนแบบไหน

ถ้าถามผม ผมก็จะตอบว่า ลง WordPress ใหม่ หรือ มี BackUp ไหม Restore กลับไปก่อนหน้าที่จะโดนสิ  สาเหตุที่ผมตอบแบบนี้เพราะถ้าเว็บโดนแฮคไปแล้วเนี่ย มันจะกระจายสคริปฝังไปแทบจะทุกไฟล์ในเว็บเราเลยครับ มาตามแก้นี่ใช้เวลาเยอะมาก อารมณ์เดียวกับ คอมโดนไวรัสนั่นแหละ ลงวินโดวน์ใหม่ง่ายกว่า

คงไม่มีใครอยากโดนกับเว็บตัวเองแน่ๆ  ลองนึกภาพวันดีคืนดี มีคนมาบอกว่า ทำไมผมเข้าเว็บคุณแล้วมันขึ้นเป็นเว็บโป๊ล่ะ หรือทำไมเว็บเข้าหลังบ้านไม่ได้ หรือทำไมโดนกูเกิ้ลฟ้องว่าเว็บไม่ปลอดภัย ขึ้นหน้าจอสีแดงหราโชวน์ให้ชาวโลกเค้ารู้กันไปเลย ว่าเว็บโดนแฮคนะ

พอจะเห็นภาพใช่ไหมครับว่ามันน่ากลัวแค่ไหน เว็บสุดรักสุดหวงของเราที่ลงทั้งแรงกาย แรงใจสร้างมาจะต้องมาเป็นแบบนี้  แต่ไม่ต้องกังวลไปครับ วันนี้ผมจะมาแนะนำพระเอกของเราที่จะมาช่วยให้เว็บเรามีความปลอดภัยเพิ่มมากขึ้น เปรียบเสมือนกับใส่ vanguard กันเลย ใครรู้จัก vanguard นี้บ่งบอกอายุนะ ( 55 )

iThemes Security คืออะไร?

คือ ปลั๊กอินที่ช่วยป้องกันช่องโหว่ที่ส่งผลให้เว็บไซต์เราไม่ปลอดภัยครับมีฟีเจอร์ต่าง ๆให้เราเลือกใช้เยอะมากเช่น

1.Brute Force Protection

2.File Change Detection

3.404 Detection

4.Strong Password Enforcement

5.Lock Out Bad Users

6.Away Mode

7.Hide Login & Admin

8.Database Backups

9.Email Notifications

มีข้อดียังไง?

1.ฟรี

ตัวปลั๊กอินเองมี 2 เวอร์ชั่นให้เราใช้งานคือ เวอร์ชั่นฟรี และ เวอร์ชั่นเสียตังค์ แค่เวอร์ชั่นฟรีก็เหลือเฟือครับสำหรับการเสริมเกราะให้เว็บไซต์เราแล้ว

2.เบา

เบาในที่นี้คือ กินทรัพยากรเว็บไซต์น้อย ลงแล้วเว็บไม่หน่วง ลงแล้วไม่โดน Host แจ้งมาว่าเว็บเรากินทรัพยากรเค้าเยอะ (กรณีที่เช่า share host)

3.ใช้งานง่าย

ขั้นตอนการตั้งค่าต่าง ๆ ก็ไม่ซับซ้อน ตัวปลั๊กอินเองก็อธิบายไว้ได้ชัดเจนว่าแต่ละฟีเจอร์เอาไว้ใช้ทำอะไร เหมาะสำหรับ user ที่ไม่จำเป็นต้องมีความรู้ทางด้านพวกนี้มากก็สามารถตั้งค่าเองได้

สรุป

ความปลอดภัยของเว็บไซต์นั้นเป็นเรื่องที่ต้องให้ลำดับความสำคัญมาอันดับต้น ๆ เลย เพราะถ้าปัญหามันเกิดแล้ว ไปตามแก้ทีหลังเนี่ย เป็นเรื่องที่ยากลำบากกว่าการป้องกันซะอีก เสียเวลาด้วย เอาเวลาไปพัฒนาเว็บไซต์เราดีกว่า

ลอง โหลด ไปใช้กันดูครับ รับรองว่าเว็บไซต์ของคุณจะปลอดภัยขึ้นมากกว่าเดิมแน่นอน

ตอนที่ 2 มาแล้ว

เสริมเกราะให้เวิร์ดเพรสด้วย iThemes Security ตอนที่ 2

จบแล้ว


ขอบคุณบทความดี ๆ จาก CodingDee  ครับ

เสริมเกราะให้เวิร์ดเพรสด้วย iThemes Security ตอนที่ 2

มาตามสัญญาครับ สำหรับเสริมเกราะให้เวิร์ดเพรสด้วย iThemes Security ตอนที่ 2 คราวนี้เราจะมาทำความเข้าใจว่าแต่ละฟีเจอร์ของ iThemes มีอะไรบ้าง เพื่อจะได้เข้าใจและนำไปปรับใช้ให้เหมาะสมกับเว็บของเรากัน หลังอ่านบทความนี้จบคุณจะได้เว็บที่มีความปลอดภัยแน่นปึ๊ก ไม่โดนแฮคง่าย ๆ อีกต่อไป.

ก่อนจะเริ่มกันใครยังไม่อ่าน ตอนที่ 1 ผมเอามาแปะไว้ให้แล้ว

สำหรับใครที่พร้อมแล้วก็มาเริ่มกันเลย

เข้าไปที่ Menu Security > Settings เราจะเจอหน้าสำหรับตั้งค่าปลั๊กอินโดยแบ่งเป็นแต่ละฟีเจอร์ มีอยู่ทั้งหมด 29 ฟีเจอร์ด้วยกัน ( เยอะมากกก )

ฟีเจอร์แรก Security Check

ฟีเจอร์นี้ปลั๊กอินจะตั้งค่าต่างๆให้เราอัตโนมัติเพียงแค่คลิก Secure Site

WordPress Tweaks

ส่วนนี้จะคล้าย ๆ กับส่วนของ System Tweaks แตกต่างกันตรงที่ส่วนนี้จะตั้งค่าในส่วนของ WordPress ตั้งตามภาพได้เลย




System Tweaks

สำหรับส่วนนี้จะเป็นการตั้งค่าเกี่ยวกับสิทธ์ในการเข้าถึงไฟล์ ตรงนี้เป็นอีกจุดหนึ่งที่เว็บส่วนมากโดนแฮคเนื่องจากไม่มีการกำหนดสิทธ์ในการเข้าถึง File หรือ Directory ต่าง ๆ ที่ดีพอ ส่วนนี้ตั้งตามภาพได้เลยครับ


Database Backups

ฟีเจอร์นี้คือสำรองฐานข้อมูลเว็บเรานั่นเอง ตั้งค่าตามภาพได้เลยครับ



อธิบายเพิ่มเติม จากรูปผมตั้งให้ปลั๊กอินทำการสำรองข้อมูล Database เป็นไฟล์ zip และส่งเข้าเมลผมทุกวันนั่นเอง

Away Mode

ฟีเจอร์นี้ผมชอบมากเปรียบเสมือนตั้งเวลาการเข้าใช้งานหลังบ้านเว็บเรานั้นเอง
โดยสามารถตั้งได้ว่าเราจะไม่อนุญาติให้สามารถเข้าหลังบ้านได้ตั้งแต่กี่โมงถึงกี่โมง
สำหรับผมผมตั้งไว้ที่ เที่ยงคืนถึงแปดโมงเช้า จะไม่สามารถเข้าใช้งานหลังบ้านได้  ตามภาพ

ลองนึกภาพว่า WP-ADMIN เป็นประตูบ้านเรานะครับ แล้ว ALWAY MODE เป็นรั้วกั้น พอถึงเวลาเราก็ปิดรั้วกั้นไม่ให้ใครเข้ามาประตูบ้านเราได้ ถ้าเราไม่ตั้ง ALWAY MODE จำกัดช่วงเวลาที่เข้าหลังบ้านเว็บเราได้ก็เปรียบเสมือนบ้านที่ไม่มีรั้วกั้น ใครจะมาเคาะจะมางัดประตูเข้าบ้านเราก็สามารถทำได้ตลอดเวลา

Banned Users

ฟีเจอร์นี้ก็มีไว้สำหรับ แบนผู้ใช้งานนั่นเอง เราสามารถเอาไอพีที่เราต้องการจะแบนมาใส่ไว้ในช่อง ตามภาพ
1 บรรทัดต่อ 1 เลขไอพี ในส่วนนี้ให้ตั้งค่าตามภาพได้เลยครับ
ปล. สำหรับใครที่เพิ่งลงปลั๊กอินครั้งแรกเลขไอพีในช่อง Ban Hosts จะยังไม่มีเหมือนของผมนะ

Local Brute Force Protection

ฟีเจอร์นี้จำเป็นอย่างมากต้องเปิดไว้เลย มันก็คือระบบป้องการ Brute Force นั่นเอง สำหรับใครที่ยังไม่รู้จักว่า Brute Force คืออะไร ผมจะอธิบายให้เข้าใจง่าย ๆ
Brute Force คือ เครื่องมือที่ใช้ในการ สุ่ม username password login เข้าระบบนั่นเอง โดยเครื่องมือประเภทนี้จะมี Database List พวก username และ password ยอดฮิตที่ชอบกันเช่น username admin password 1234 เป็นต้น โดยมันจะสุ่ม ส่ง username password เข้ามาที่ระบบเราอยู่เรื่อยๆจนกว่าจะเจอ username password ที่ถูกต้อง ถ้าเราตั้ง username และ password ไม่ดีพอก็จะโดนเครื่องมือพวกนี้เจาะเข้าระบบเราได้ง่าย ๆ นั่นเอง สำหรับ วิธีตั้งรหัสผ่านให้คาดเดาได้ยากและปลอดภัย ผมเขียนไว้ ลองไปอ่านกันดูครับ
วิธีตั้งค่าก็ดูตัวอย่างตามภาพได้เลยครับ

อธิบายจากภาพ ผมตั้งไว้ว่า ถ้า user ใดก็ตามทำการ login เข้าระบบผิดติดต่อกันเกิน 3 ครั้งจะโดนแบน 480 นาที คิดเป็นชั่วโมงก็ 16 ชั่วโมง หลังจากนั้นถึงจะมา login ใหม่ได้
และถ้าใครมาลอง login โดยใช้ username admin จะโดนแบนทันทีเลย หวังว่าไม่มีใครตั้ง username เป็น admin นะ ใครตั้งรีบไปเปลี่ยนเลยด่วน ๆ

Hide Backend

ส่วนนี้จะเป็นการเปลี่ยน url สำหรับเข้าหลังบ้านครับ โดยปกติเวลาเราจะเข้าหลังบ้านของ wordpress เราก็จะพิมพ์ /wp-login.php หรือ /wp-admin แค่นี้มันก็จะ redirect มาหน้า login ให้แล้วซึ่งจริง ๆ แล้วไม่เป็นผลดีเลยครับ ใครก็สามารถหาหน้า login เว็บเราเจอ วิธีเปลี่ยนก็ดูตามรูปเลยครับ

จากรูปผมตั้ง url สำหรับเข้าหลังบ้านเป็น /abc เพียงเท่านี้ เมื่อผู้ไม่หวังดีหรือคนอื่นที่พิเรนมาลองเดา url เข้าหลังบ้านเราด้วย /wp-login.php หรือ /wp-admin เค้าก็จะหาไม่เจอแล้วครับ

Change Database Table Prefix

ส่วนนี้จะทำการเปลี่ยน prefix ชื่อนำหน้าของ table ใน database เว็บเราครับซึ่ง default ของ wordpress คือ wp_ อันนี้ควรจะเปลี่ยนอย่างยิ่งครับเพื่อไม่ให้เดาชื่อ table ใน database เราได้ ทำตามภาพได้เลยครับ
ปล. backup database ก่อนทำตรงนี้นะครับ กันไว้ก่อนเผื่อเกิดเหตุการไม่คาดฝัน

แถมให้ในส่วนของ Logs ครับ

ตัวปลั๊กอินเองจะเก็บ logs ไว้ให้เราดูว่ามีอะไรเกิดขึ้นกับ web ของเราบ้างมาดูกันเลยครับ

จากรูปแสดงให้เห็นว่าในวันที่ 2017-01-28 เวลา 21:07:56 มีการพยายามเข้า url หลังบ้านแต่เจอ Alway mode ที่ตั้งเวลาไว้เลยเข้าไม่ได้ มาลองดูอีกสักอันกันครับ

อันนี้มีการสุ่ม  login ด้วย user ที่ชื่อว่า test เข้ามาหลายครั้งเลยและสุดท้ายก็โดน ban ไปตามที่เราตั้งค่าไว้ครับ ลองคลิกที่เลขไอพีดูว่ามาจากไหน

จากภาพก็มาจาก Jarkata โน่นเลย
เห็นไหมครับว่าวัน ๆ หนึ่งเกิดอะไรขึ้นกับเว็บของเรากันบ้าง ถ้าเราไม่มีการป้องกันที่ดีพอจะเกิดอะไรขึ้นบ้างก็ไม่รู้ ดีไม่ดีอาจต้องทำเว็บใหม่กันเลย

จบแล้ว

ขอบคุณบทความดี ๆ จาก CodingDee ครับ

แชร์ประสบการณ์ เมื่อเวิร์ดเพรส “ส่งเมลไม่ออก” และวิธีแก้ปัญหา

หากคุณกำลังเจอปัญหา “ส่งเมลไม่ออก” หรือ เมลที่ส่ง “เข้าเมลขยะ”

หรือไม่รู้ว่าเมลที่ส่งแล้วไปไหน “ส่งออกไหม” “ผู้รับได้เมลไหม” “เปิดเมลอ่านหรือเปล่า”

ปัญหาเหล่านี้จะหมดไปหลังจากคุณอ่านและทำตามวิธีการที่ผมกำลังจะบอกคุณต่อไปนี้

วิธีนั่นก็คือใช้ Mailgun

mailgun คือผู้ให้บริการด้านอีเมลโดยเฉพาะ โดยเราจะใช้ mailgun นี้มาเป็นคนส่งเมลให้เราแทนการส่งเมลจาก host เราเอง ซึ่ง mailgun เค้าให้เราใช้งานฟรี เดือนละ 10,000 อีเมล หากมากกว่านั้นมีค่าใช้จ่ายเพิ่ม ขึ้นอยู่กับเราครับว่าหากต้องการใช้งานมากกว่านั้นก็ค่อยซื้อบริการเค้า แต่สำหรับผมแล้ว 10,000 อีเมลต่อเดือนที่เค้าให้มาก็เยอะมากแล้วครับ

สิ่งแรกที่ต้องทำคือ

สมัคร Account Mailgun ก่อน คลิก หลังจากสมัครเรียบร้อยแล้วให้ Login เข้าไปที่ Account เราครับ แล้วคลิกที่เมนู Domain

คลิก Add Domain ใส่ชื่อ Domain ของเราลงไป เช่น mg.yourdomain.com

วิธีการตั้งค่าหลังจากเราเพิ่มโดเมนเสร็จมีอยู่แค่ 3 ขั้นตอนง่าย ๆ ดังนี้

  1. Login เข้าไปยัง DNS Provider ที่เราใช้อยู่
  2. เพิ่ม DNS Record เข้าไปตามรายการที่ทาง mailgun ให้มา มีอยู่ทั้งหมด 5 Record
  3. รอให้ DNS ที่เราเพิ่มเข้าไป Verify ( ไม่เกิน 1 วัน )

วิธีดูว่า DNS เรา Verify หรือยัง มีจุดสังเกตุอยู่ 2 จุดดังนี้

  1. Domain Information ตรง State จะ Active สีเขียว

2.Domain Verification & DNS

ตรวจสอบขั้นตอนนี้ให้เรียบร้อยนะครับไม่งั้นเราจะไปต่อไม่ได้ ส่วนใครทำผ่านหมดแล้ว ก็ไปขั้นตอนต่อไปกันครับ

Tracking Settings

ในขั้นตอนนี้เราจะไปตั้งให้ mailgun track ว่ามีการคลิกหรือเปิดอีเมลที่เราส่งไปหรือไม่ โดยเข้าไปที่เมนู Tracking Settings และตั้งเป็น on ตามภาพครับ

มาถึงตอนนี้เราก็จะได้ SMTP สำหรับไปใช้ส่งอีเมลให้เว็บเรากันแล้ว
แต่ยังเหลืออีกขั้นตอนนั้นก็คือเราต้องไปโหลดปลั๊กอินสำหรับทำให้ WordPress เราใช้ SMTP ในการส่งเมลครับ

ผมแนะนำเป็นตัวนี้ Easy WP SMTP โหลดมาและติดตั้งให้เรียบร้อย เสร็จแล้วเข้าไปตั้งค่า smtp ตามภาพครับ

นำ Default SMTP Login มาใส่ในช่อง SMTP username
นำ Default Password มาใส่ในช่อง SMTP Password
ดูวิธีตั้งค่าตามตามภาพนะครับ

สำหรับ SMTP username และ SMTP Password เอามาจากไหน ?
เอาจาก mailgun ที่เราสมัครไว้ อยู่ในส่วนของ Domain Information ตามภาพครับ

คราวนี้เว็บเราก็พร้อมที่จะส่งเมลโดยใช้ smtp กันแล้วครับ โดยจากที่ผมใช้ mailgun ในการส่งเมลมา ดูจาก Logs
ผมส่งไปทั้งหมด 1,388 เมล เข้า Inbox ถึง 1,372 ไม่เข้าแค่ 16 เมลเท่านั้น ผมยังสงสัยครับว่า 16 เมลที่ส่งไม่เข้าเนี่ยเป็นเพราะอะไร เราสามารถดูได้จาก Logs ของ mailgun ครับ

ดูจาก logs แล้วมันบอกว่า 16 email นี้ไม่มีอยู่จริง ซึ่งมีโอกาสเป็นไปได้ว่าเป็นเมลที่สมัครเข้ามาในเว็บเป็นสแปมเมลนั่นเอง

จบแล้ว

ขอบคุณบทความดี ๆ จาก CodingDee ครับ

WordPress Chat ง่าย ๆ ด้วย Facebook Messenger แบบไม่ต้องใช้ปลั๊กอิน

WordPress Chat

WordPress มีปลั๊กอินสำหรับที่สามารถทำ chat อยู่หลายตัวก็จริงแต่ผมเองเป็นประเภทที่ไม่ชอบลงปลั๊กอิน (ถ้าไม่จำเป็น) ซึ่งเมื่อปลายปีที่ผ่านมาเฟสบุ๊คเองก็ปล่อยฟีเจอร์สำหรับให้ลูกค้าที่เข้าเว็บมาสามารถ chat ผ่านหน้าเว็บได้เลยโดยที่เราแทบจะไม่ต้องทำอะไรเลยมีขั้นตอนเล็ก ๆ น้อย ๆสำหรับเปิดใช้งานซึ่งตรงกับความต้องการของผมมาก ใช้เวลาจริง ๆ ไม่เกิน 5 นาทีก็เสร็จแล้วหากใครอยากลองทำบ้างก็สามารถทำตามขั้นตอนด้านล่างนี้ได้เลยครับ

ข้อกำหนดในการใช้งานมี 3 ข้อ

  1. เว็บที่จะใช้งาน Messenger ได้ต้องติดตั้ง HTTPS แล้วเท่านั้น
  2. ใช้ชื่อโดเมนเท่านั้น เช่น https://standhost.com สำหรับการใส่ไว้ในไวท์ลิสต์
  3. ไม่รองรับที่อยู่ IP และ localhost สำหรับการใส่ไว้ในไวท์ลิสต์

วิธีในการติดตั้งมีอยู่ 3 ขั้นตอนง่ายมาก

1.เราต้องมี App ID สำหรับจะใช้งานกันก่อนใครยังไม่มีไปสร้างมาก่อนนะครับ สร้าง App

2.เพิ่มโดเมนเราเข้าไว้ใน Whitelist โดยเข้าไปที่เพจที่เราต้องการแล้วเลือก การตั้งค่า > แพลตฟอร์ม Messenger > Whitelisted Domains > กรอกชื่อโดเมนของเราลงไป

3.นำ Code ด้านล่างนี้ไปใส่โดย facebook แนะนำให้เราใส่ไว้ใน Tag Body

<script>
  window.fbAsyncInit = function() {
    FB.init({
      appId            : 'YOUR-APP-ID',
      autoLogAppEvents : true,
      xfbml            : true,
      version          : 'v2.11'
    });
  };

  (function(d, s, id){
     var js, fjs = d.getElementsByTagName(s)[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement(s); js.id = id;
     js.src = "https://connect.facebook.net/th_TH/sdk.js";
     fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'facebook-jssdk'));
</script>
<div class="fb-customerchat" page_id="YOUR-PAGE-ID"></div>

วิธีดูเพจไอดี

จริง ๆ แล้วไอดีเพจมันก็ดูในเพจเราได้เลยนะแต่สำหรับใครที่หาไม่เจอผมมีอีกวิธีที่ง่ายขึ้น เข้าไปที่เว็บนี้ findmyfbid.com แล้วกรอก url ของเพจเราลงไปเช่น https://www.facebook.com/ชื่อเพจ แค่นี้เราก็จะได้เพจไอดีมาแล้ว

ทดลองใช้งานจริง

ถ้าทำถูกทุกขั้นตอนแล้วลองเข้าหน้าเว็บเราดูก็จะเจอปุ่ม messenger โผล่ขึ้นมาที่มุมล่างขวาของจอแบบนี้

จบแล้ว

ขอบคุณบทความดี ๆ จาก CodingDee ครับ

วิธีทำให้เวิร์ดเพรสโดนแฮค

เรามาดูวิธีทำให้เวิร์ดเพรสโดนแฮคกันครับ ผมรับรองได้เลยว่าทำตามนี้แล้วโดน Hack แน่นอน

วิธีทำให้เวิร์ดเพรสโดนแฮค

1.โหลดธีมหรือปลั๊กอินเถื่อนหรือโหลดจากแหล่งที่ไม่น่าเชื่อถือ

โหลดปลั๊กอินเถื่อนเพราะฟรี ที่ไหนแจกของฟรีเราโหลดหมด เราเป็นคนประหยัด (งก)

2.ตั้งค่า Permission Folder & File เป็น 777

Permission 777 คือสิทธ์ิในการยินยอมให้ใครก็ได้สามารถสร้างหรือแก้ไขไม่ว่าจะเป็น File หรือ Folder สามารถทำได้หมด เราเป็นคนใจกว้าง ใจดี ใครอยาก สร้างหรือแก้ไขไฟล์อะไรบนเว็บเรา เรายินดี มาจัดการได้เลย

3.อย่าอัพเดทเวอร์ชั่น WordPress ,Themes, Plugin

ทุกครั้งที่มีเวอร์ชั่นใหม่ออกมา อย่าอัพเดทครับ ปล่อยไว้อย่างนั้น เพราะทุก ๆ อัพเดททางผู้พัฒนาเค้าก็จะปรับปรุงโค๊ด เพิ่มประสิทธิภาพให้มันเสถียรขึ้น อุดช่องโหว่ต่าง ๆ ที่มีในเวอร์ชั่นเก่า เราไม่ชอบของใหม่ เราจะใช้ของเก่า เราเป็นนักอนุรักษ์ของเก่า เพราะฉะนั้นเราจะไม่อัพเดทอะไรทั้งสิ้น

4.ตั้ง Username ให้ง่าย ๆ

ผมแนะนำให้ตั้ง Username เป็นชื่อพวกนี้

  • admin
  • ชื่อเว็บคุณเอง
  • admin1234

5.ตั้ง Password ให้จำได้ง่าย ๆ

ตั้งให้จำง่าย เข้าไว้อะไรจำยาก ๆ อย่าไปตั้งเช่น

  • admin1234
  • password
  • password1234
  • 1234

6.อย่า Backup

เปลืองพื้นที่เว็บครับอย่าไปทำเลย Backup อะไรเนี่ย ทำไปก็ไม่ได้ใช้ เสียเวลา

7.อย่าติดตั้ง Plugin Security

อย่าลง Plugin พวกนี้เพราะถ้าเราลงจะทำให้ Hack ได้ยากขึ้นเว็บจะมีระดับความปลอดภัยที่ดีขึ้น แต่บทความนี้เราอยากให้ Hack ได้ง่าย ๆ เลยไม่ลง

จบแล้ว

อ่านมาถึงตรงนี้ก็คงพอจะรู้นะครับว่า จริง ๆ แล้วผมประชด ทั้งหมดที่ผมเขียนมา รวบรวมจากประสบการณ์การแก้เว็บที่โดน Hack ทั้งของลูกค้า ของคนรู้จักและเว็บผมเอง ช่วงที่ทำเว็บใหม่ ๆ ก็เคยโดนเหมือนกัน คราวนี้ก็ขึ้นอยู่กับคุณแล้วว่าอยากได้แบบไหน ถ้าอยากโดน Hack ก็ทำตามที่ผมเขียนมาได้เลย ถ้าไม่อยากโดน Hack ก็ทำตรงกันข้ามกับที่ผมเขียน รับรองไม่โดน Hack (ง่าย ๆ) แน่นอน


ขอบคุณข้อมูลดี ๆ จาก https://codingdee.com/how-to-make-wordpress-hacked/

วิธีป้องกัน การโดน Copy บทความด้วย JavaScript

วิธีป้องกัน การโดน Copy บทความด้วย   JavaScript

เพิ่มโค๊ดชุดนี้เข้าที่  footer.php

<script type="text/javascript">
document.addEventListener('copy', function(e){
	e.clipboardData.setData('text/plain', 'Original Content By standhost.com\r\n');
	e.preventDefault();
});
</script>

การทำงานของโค๊ดชุดนี้คือ

  • ตรวจสอบว่าเมื่อมีการกด Copy ไม่ว่าจะเป็น คลิกขวาแล้วกด Copy
  • หรือกด Control + C
  • โค๊ดจะทำการแทนที่ข้อความที่ Copy มาด้วย ข้อความที่เรากำหนดไว้
  • ตัวอย่างข้อความที่ผมกำหนดไว้คือ Original Content By Standhost.com ใครจะเปลี่ยนก็เปลี่ยนตรงนี้นะครับเป็นข้อความที่เราต้องการตามใจชอบเลย

สิ่งที่ควรทำ ก่อนจะโดน Copy บทความหรือโดนแล้วก็ทำได้ครับ คนที่มา Copy เราเค้าจะได้ทำได้ลำบาก

  1. ใส่ความเป็นตัวตนหรือเอกลักษณ์ของเราลงไปเช่น แทนสรรพนามที่เรียกตัวเราเองเป็นชื่อ เว็บเราหรือเป็นชื่อเราไปเลยแบบนี้คนที่ Copy ไปก็ต้องลำบากขึ้นอีกหน่อยต้องมาไล่เปลี่ยนตรงนี้
  2. วิธีจากคุณ Woravut Ikssn Srianant แนะนำว่า “เวลาเขียนเรื่องใหม่ๆ จะพยายามใส่ลิ้งในเนื้อหาให้วิ่งไปหาหน้าหลักหรือหน้าเดียวกันนี้ของเว็บเรา แล้วส่ง url เข้าไปในเครื่องมือเว็บมาสเตอร์ของ search engine ต่างๆ เวลาโดนก็อบถ้ามันไม่ได้แก้ไขเนื้อหาเรา ก็เท่ากับมันช่วยโปรโมทเว็บเราให้แบบฟรีๆ”
  3. เปิด Hot link Protection ใน CloudFlare เพื่อป้องกันโดนสูบ bandwidth
  4. ถ้าอยากใช้ Plugin ก็ลองตัวนี้ครับ WP Content Copy Protection & No Right Click

จบแล้ว

ขอขอบคุณข้อมูลดี ๆ จาก https://codingdee.com/copy-me-if-you-can/