Django สามารถ compile แล้วรันได้ไหมครับ

ผมกำลังทดลองใช้ Django อยู่ครับ ที่สงสัยคือไพธอนนี่สำหรับงานเว็บแล้ว สามารถคอมไพล์ก่อน แล้วค่อยรันได้ไหมครับ

roofimon's picture

งง ครับ ต้อง compile ด้วยหรอ

sugree's picture

ปกติมันคอมไพล์อยู่แล้ว *.pyc คือผลของการคอมไพล์ที่ว่า มันทำตอนรันครั้งแรก ถ้ามีสิทธิ์เขียนแถวๆ นั้น

อ๋อครับ ผมก็เห็นว่าจะมีไฟล์ .pyc เกิดขึ้นทุกครั้งที่เซฟ หรือแก้ไขงาน

ผมก็เลยสงสัยต่อว่า ถ้ามันรันจากไฟล์ .pyc แล้วพอผมลบไฟล์ .py ทิ้ง ทำไมมันกลับทำงานไม่ได้ละครับ

sugree's picture

มันจะทำงานได้ระดับหนึ่ง เนื่องจากเวลารัน django เรามักจะรันผ่าน mod_python ซึ่งจะดูนามสกุล .py เป็นหลักน่ะ

งั้นผมถามตรงๆ เลยดีกว่า ทำอย่างไรเราจะซ่อนโค้ดตรงนั้นได้ครับ โปรเจ็กค่อนข้างสำคัญ ได้รับการร้องขอจากฝ่ายนโยบายมาแบบนี้

ถ้าเป็น PHP ผมยังจะพอรู้ว่าควรทำไงนะเนี่ย

sugree's picture

ทำเป็น pyc แล้วไปเซ็ต mod_python ให้ใช้ *.pyc ตรงๆ

ขอบคุณมากๆ เลยครับ :D

ทำอย่างไร หรือครับ ช่วยแนะนำหน่อยคับ

sugree's picture

เปลี่ยนนามสกุลจากปกติ .py เป็น .pyc

แบบนี้ก็ view source ได้อยู่นี่ครับ? ปกติแล้วเวลารันมันก็จะ compile ให้เองตามท่าน veer ว่าอยู่แล้วนี่ครับ?

ปล. pyc ก็แกะได้นะครับ เคย rm * .pyc ออก(โปรดสังเกต space) ไฟล์หายไป ใช้โปรแกรมกู้ข้อมูลมาได้หมดแล้ว blog ก็รันได้ จนมา port ลง appengine ถึงรู้ว่า .py หายไปไฟล์นึงแต่มี .pyc อยู่ครับ ก็เลยใช้ http://www.depython.net/ ช่วยกู้ขึ้นมา(พอดีว่าไฟล์เล็ก ถ้าไฟล์ใหญ่ๆลอง google ดูครับมี)

sugree's picture

หมายถึงเปลี่ยน handler ใน apache ปกติมันจะมอง .py แล้วแปลเป็น .pyc ถ้า pyc ยังไม่พอก็ pyo ลดลงไปอีกหน่อยนึง วิธีที่ดีที่สุดคงต้องหาพวก obfuscater มารัน

veer's picture

เข้าประเด็นดี lol

ย้าย Codenone

ประกาศย้าย Codenone ไปใช้ Forum ของ Blognone แทนครับ ตามไปตั้งกระทู้ต่อได้ที่ Codenone Forum (รายละเอียดอ่านจากกระทู้ ย้าย Codenone ไปรวมกับ Blognone)

กระทู้เก่าๆ จะย้ายตามไปในภายหลัง ตอนนี้ปิดการโพสต์กระทู้ไว้ เหลือไว้เฉพาะอ้างอิงเท่านั้น