वीर

18 มิถุนายน 2008

mod_wsgi + userdir บน ubuntu 8.04

Filed under: Uncategorized — Tags: , , , , , , , , , , , — वीर @ 12:07

ผมอ่านเรื่องเปิดเทียบ web app tech ต่างๆ มา. เห้น mod_wsgi น่าสนใจดีก็เลยจะลองเล่นบ้าง (เอาแบบให้ใช้ได้หลายๆ user ด้วย น่าจะเหมาะกับ lab ดี) ก็เริ่มจากไปอ่าน http://code.google.com/p/modwsgi/wiki/ConfigurationGuidelines

แต่ก่อนจะทำตามตำรา ผมก็ลง mod_wsgi ก่อนเลย

 sudo aptitude install libapache2-mod-wsgi

ตามด้วย enable มันซะ

sudo a2enmod mod-wsgi

แปลกนะมีคำว่า mod ติดมาด้วย หาตั้งนาน :-P ปกติเวลาจะใช้ mod_userdir ก็แค่

sudo a2enmod userdir

(ไม่ใช่เหรอ? …. รวมถึง mod_rewrite และอื่นๆ ด้วย)

ด้วยความพิเศษของ Ubuntu/Debian นิดหน่อยๆ ไฟล์ที่ผมเข้าไปแก้คือ /etc/apache2/mods-enabled/userdir.conf ก็ดัดแปลงตามตัวอย่างอะนะแก้แล้วเป็นแบบนี้

<IfModule mod_userdir.c>
        UserDir public_html
        UserDir disabled root

        <Directory /home/*/public_html/>
                AllowOverride FileInfo AuthConfig Limit
                Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
        </Directory>

        RewriteEngine On
        RewriteCond %{REQUEST_URI} ^/~([^/]+)
        RewriteRule . - [E=APPLICATION_GROUP:~%1]

        <Directory /home/*/public_html/wsgi-scripts/>
                Options ExecCGI
                SetHandler wsgi-script
                WSGIApplicationGroup %{ENV:APPLICATION_GROUP}
        </Directory>
</IfModule>

เสร็จแล้วผมก็เข้าไปสร้าง folder ที่ /home/veer/public_html/wsgi-scripts พร้องเปลี่ยน permission เป็น 755 ตามด้วยเอา myapp.wsgi ตามตัวอย่างไปวางในนั้น


def application(environ, start_response):
    status = '200 OK'
    output = 'Hello World!'
    response_headers = [('Content-type', 'text/plain'),
                        ('Content-Length', str(len(output)))]
    start_response(status, response_headers)
    return [output]

จากนั้นก็ไปที่ web browser เรียก http://127.0.0.1/~vee/wsgi-scripts/myapp.wsgi (ตามรูป)

ขั้นตอนถัดไปก็จะลองลง Pylons และ Django ดู

3 ความคิดเห็น »

  1. [...] ก็ใช้ได้แล้ว. ด้วยพื้นฐานจากการใช้ mod_wsgi+userdir , การใช้ mod_wsgi กับ Turbogears และ การใช้ mod_wsgi กับ [...]

    Pingback โดย mod_wsgi + userdir + Turbogears « वीर — 18 มิถุนายน 2008 @ 17:25

  2. เจ๋ง!!!

    ความเห็น โดย LewCPE — 18 มิถุนายน 2008 @ 18:43

  3. [...] (วิธีใช้ mod_wsgi กับ userdir เข้าไปดูที่ http://blog.vee-u.com/2008/06/18/mod_wsgi_userdir_ubuntu/ ได้ และ http://blog.vee-u.com/tag/wsgi/ [...]

    Pingback โดย xmlrpc ด้วย python บน apache « वीर — 18 ธันวาคม 2008 @ 06:57


RSS feed สำหรับความคิดเห็นในกระทู้นี้ TrackBack URI

เขียนความคิดเห็นของคุณ

บลอกที่ WordPress.com .