ติดตั้งและคอนฟิก uWSGI กับ nginx เพื่อรัน Python3/Django บน Ubuntu 16.04

ถึงแม้ว่าตัวคำสั่ง python สามารถรันเป็นเว็บเซิร์ฟเวอร์ใช้พัฒนาโปรแกรมได้ แต่เมื่อต้องนำไปใช้งานจริง (production) นิยมคอนฟิกรันเป็นแอปเซิร์ฟเวอร์ เชื่อมต่อกับเว็บเซิร์ฟเวอร์อย่าง Apache หรือ Nginx เพื่อให้รองรับโหลดได้มากขึ้น รวมทั้งบริหารจัดการอื่นๆ ได้

uWSGI เป็นแอปเซิร์ฟเวอร์ตัวนึงที่สามารถรันเว็บโปรแกรมที่เขียนด้วยภาษา python ได้ โดยสามารถคอนฟิกเชื่อมโยงกับเว็บเซิร์ฟเวอร์โดยผ่าน WSGI (Web Server Gateway Interface)

ลองมาดูวิธีการติดตั้งและคอนฟิก uWSGI เพื่อเชื่อมต่อกับเว็บเซิร์ฟเวอร์ Nginx บน Ubuntu 16.04 กัน

Continue reading “ติดตั้งและคอนฟิก uWSGI กับ nginx เพื่อรัน Python3/Django บน Ubuntu 16.04”

ติดตั้ง Django บน Python 3

ลองมาดูวิธีการติดตั้ง Django ซึ่งเป็น Web Framework ยอดนิยมสำหรับการพัฒนาเว็บไซต์ด้วยภาษา python กัน

โดยจะติดตั้ง Django ใน virtual environment ที่สร้างไว้ ติดตั้งและหัดใช้ pip, venv ใน Python 3 บน Ubuntu 16.04

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

Continue reading “ติดตั้ง Django บน Python 3”

ติดตั้งและหัดใช้ pip, venv ใน Python 3 บน Ubuntu 16.04

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

ในที่นี้จะใช้ python เวอร์ชัน 3 เท่านั้น เหมาะสำหรับผู้เริ่มต้นกับ python และเพื่อความง่ายและไม่สับสนในเรื่องเวอร์ชัน จะขอทดลองบน Ubuntu 16.04 ที่โดยดีฟอลต์จะติดตั้งมาเฉพาะ Python 3 เท่านั้น

Continue reading “ติดตั้งและหัดใช้ pip, venv ใน Python 3 บน Ubuntu 16.04”

ทดสอบพิมพ์ดอตแมทริกซ์ด้วย CUPS บนลีนุกซ์

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

ลองมาดูการต่อเครื่องพิมพ์นี้เข้ากับเครื่องเซิร์ฟเวอร์ลีนุกซ์ แล้วติดตั้งและคอนฟิก CUPS เพื่อทดสอบพิมพ์เครื่องพิมพ์นี้บนเซิร์ฟเวอร์ลีนุกซ์โดยตรง

ในที่นี้จะใช้เครื่องพิมพ์ EPSON LQ-590 ต่อพอร์ต USB เข้ากับเครื่องเซิร์ฟเวอร์ที่ติดตั้ง Ubuntu 16.04

Continue reading “ทดสอบพิมพ์ดอตแมทริกซ์ด้วย CUPS บนลีนุกซ์”

ติดตั้งและคอนฟิก PHP-FPM กับ nginx บน Ubuntu 16.04

จากการ ติดตั้ง nginx บน Ubuntu 16.04 เว็บเซิร์ฟเวอร์ที่ได้ จะรองรับไฟล์ html ธรรมดา

ถ้าต้องการรันโปรแกรมเว็บที่พัฒนาด้วย PHP ต้องติดตั้งแพ็คเกจและคอนฟิกเพิ่มเติม

การทำให้ nginx สามารถรัน PHP ได้นั้น มีหลายวิธี ในที่นี้ขอเลือกคอนฟิกแบบ FastCGI Process Manager (FPM) โดยติดตั้งแพ็คเกจ php-fpm แล้วแก้ไขคอนฟิก nginx เพื่อให้เมื่อมีการเรียกไฟล์ .php บนเว็บเซิร์ฟเวอร์ ให้ nginx ส่งไฟล์ .php นั้นไปรันใน FPM โดยผ่านทางไฟล์ socket แล้วรับผลลัพธ์ที่ได้กลับมาแสดงบนเว็บ

Continue reading “ติดตั้งและคอนฟิก PHP-FPM กับ nginx บน Ubuntu 16.04”

ติดตั้ง nginx บน Ubuntu 16.04

มาดูวิธีการติดตั้งและคอนฟิก nginx บน Ubuntu 16.04 เพื่อรันเป็นเว็บเซิร์ฟเวอร์เบื้องต้นกัน

Continue reading “ติดตั้ง nginx บน Ubuntu 16.04”

คอนฟิก Samba 4 ให้ทำ Roaming User Profiles ใน Active Directory Domain Controller

หลังจาก ตั้ง Active Directory Domain Controller ด้วย Samba 4 บน Ubuntu 16.04 เรียบร้อยแล้ว อีกหนึ่งคุณสมบัติที่นิยมใช้กันภายในบริษัทคือ การเซ็ต Roaming User Profiles เพื่อให้ผู้ใช้งานสามารถล็อกอินจากเครื่อง Windows ไหนก็ได้ ที่เป็นสมาชิก AD Domain เดียวกัน แล้วจะได้หน้าจอ Desktop เหมือนกัน

หลักการทำงานคร่าวๆ คือ เมื่อผู้ใช้ที่มีการคอนฟิก Roaming User Profiles ไว้ ล็อกอิน หรือ Log on เข้าเครื่อง Windows ที่อยู่ใน AD Domain จะมีการดาวน์โหลด profiles ต่างๆ ของผู้ใช้ เช่นภาพ Desktop Background ไฟล์หรือโฟลเดอร์ที่อยู่บน Desktop มาจากแชร์โฟลเดอร์บนเซิร์ฟเวอร์ที่ถูกตั้งค่าไว้

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

ลองมาดูวิธีการคอนฟิก Samba 4 ให้สามารถทำ Roaming User Profiles ได้

Continue reading “คอนฟิก Samba 4 ให้ทำ Roaming User Profiles ใน Active Directory Domain Controller”

ตั้ง Active Directory Domain Controller ด้วย Samba 4 บน Ubuntu 16.04

นอกจากจะคอนฟิกแชร์ไฟล์ให้เครื่องอื่นที่รัน Windows สามารถเข้ามา Map Drive เพื่อเก็บไฟล์ไว้บนเซิร์ฟเวอร์ลีนุกซ์ได้แล้ว

Samba 4 ยังสามารถคอนฟิกให้เป็น Active Directory Domain Controller เพื่อควบคุมสิทธิ์ เช่นเก็บ Username, Password สำหรับการล็อกอินก่อนใช้งานเครื่อง Windows ที่เป็นสมาชิก (member) ของ Domain ได้

ลองมาดูวิธีการติดตั้งและคอนฟิกกัน

เนื่องจากปัญหาเรื่องแพ็คเกจใน Yum repo ของทั้ง CentOS 6 และ CentOS 7 ซึ่งยังไม่มีแพ็คเกจ rpm อย่างเป็นทางการ ในการคอนฟิกเป็น Domain Controller ในที่นี้จะขอเปลี่ยนมาใช้ Ubuntu 16.04

Continue reading “ตั้ง Active Directory Domain Controller ด้วย Samba 4 บน Ubuntu 16.04”

สั่งพิมพ์ไปยัง JetDirect Printer ด้วยคำสั่ง nc

วิธีการสั่งพิมพ์ผ่านเน็ตเวิร์ก ไปยังเครื่องพิมพ์ที่ต่อพอร์ตแลนด้วย JetDirect Printerโดยใช้คำสั่ง nc  ซึ่งเป็นคำสั่งที่ใช้ส่งข้อมูลที่ต้องการเข้าพอร์ต TCP 9100 โดยตรง

เผื่อให้ผุ้อ่านได้ลองนำไปใช้ในการสั่งพิมพ์จากเครื่องลีนุกซ์ หรือแม้กระทั่งเขียนโปรแกรมเพื่อส่งข้อมูลด้วย socket สั่งพิมพ์ข้อความได้

Continue reading “สั่งพิมพ์ไปยัง JetDirect Printer ด้วยคำสั่ง nc”

ติดตั้ง Laravel 5.3 บน Ubuntu 16.04

ลองมาดูการติดตั้ง Laravel 5.3 บน Ubuntu 16.04 กันบ้าง โดยจะทดสอบบนเครื่อง ติดตั้ง PHP 7 บน Ubuntu 16.04 ที่ ติดตั้ง Composer เพื่อบริหารจัดการไลบรารี PHP

โดยจะแสดงวิธีการติดตั้งทีละขั้นตอนด้วย composer แสดงข้อความปัญหาที่เกิดขึ้น พร้อมแสดงวิธีการแก้ไขปัญหา เช่นใช้คำสั่ง apt ติดตั้งแพ็คเกจโมดูล php เพิ่มเติม ที่จำเป็นต้องใช้

Continue reading “ติดตั้ง Laravel 5.3 บน Ubuntu 16.04”