2009年10月16日 星期五

[Unix] 使用 Tarball 安裝 SQLite + Python + Apache + Django @ FreeBSD 7.2

想要了解一個系統架構,最好的方式就是從頭架起它!由於工作上會接觸 Django 這套架構,這個禮拜花不少時間看它的英文介紹,再花一天看個 Python 語法吧,說實在我已忘的差不多了。


一些好用的電子書:



至於安裝 Django 並不難,有很多現成的安裝方式,但我選擇用 Tarball 的方式來享受一下過程,挑選一台 FreeBSD 機器。在安裝的過程中一直卡在 Python 無法使用 SQLite 的部分,恰好我測試的機器還沒裝 SQLite ,讓我有乾淨的環境來安裝一下!安裝步驟如下:



  1. 安裝 SQLite 3.6.19


  2. 安裝 Python 2.6.3

    • wget http://www.python.org/ftp/python/2.6.3/Python-2.6.3.tgz ;

    • tar -xvf Python-2.6.3.tgz ; cd Python-2.6.3 ;

    • 編輯 setup.py 檔案

      • 在 sqlite_inc_paths 上加上 '$HOME/sqlite/include',

      • 上述 $HOME 僅是個示意,請自行修改成剛剛安裝的絕對路徑

      • 如此一來方能解決 Python 2.6.3 無法使用 sqlite3 的問題,而原先內附的 README 也有說過這麼一段話

        • Building the sqlite3 module
          ---------------------------

          To build the sqlite3 module, you'll need the sqlite3 or libsqlite3
          packages installed, including the header files. Many modern operating
          systems distribute the headers in a separate package to the library -
          often it will be the same name as the main package, but with a -dev or
          -devel suffix.

          The version of pysqlite2 that's including in Python needs sqlite3 3.0.8
          or later. setup.py attempts to check that it can find a correct version.



      • 只是我一直沒找到編譯 Python 時,可指定 SQLite 的安裝位置的參數 :P 最後則是直接改 setup.py 啦,這應該是用 Tarball 安裝且不是安裝在系統預設位置上才會碰到的問題。



    • ./configure --prefix=$HOME/python && make && make install ;



  3. 安裝 Apache HTTP Server 2.2.14


  4. 安裝 mod_wsgi 2.6


  5. 安裝 Django 1.1.1



如此一來,就完成架設 Django 環境囉!緊接著就是測試一下啦



  • $HOME/python/bin/django-admin.py startproject helloworld ; cd helloworld ;

  • 編輯 settings.py

    • DATABASE_ENGINE = 'sqlite3'

    • DATABASE_NAME = 'test.db'



  • $HOME/python/bin/python manage.py runserver 8080

  • 接著就可用 http://server_host:8080/ 來觀看 Django 的畫面囉!


沒有留言:

張貼留言