スポンサーサイト

0

    一定期間更新がないため広告を表示しています


    • 2014.12.23 Tuesday
    • -
    • -
    • -
    • -
    • -
    • by スポンサードリンク

    djangoを自分のVPSにセットアップ♪

    0
      今まで手書きPHP製CMSを使ってた自サイト(WEB制作のPRサイトです^^)をdjango製CMSで置き換えるために、自分のVPSにpythonとdjangoをセットアップしました。

      python&djangoセットアップの際のハマリポイントとしては、
      ■MySQLdbのインストール
      MySQLdbを入れようとしたらgccなんちゃらでエラー!
      なんで?なんで?とgcc自体を最新版にアップしたり、python2.4が入っていたものをpython2.5.1に入れ替えてみたり、思いつく限りの対策をしても、同じところでエラー。
      tgzじゃなくてsvnでMySQLdbをダウンロードしてみてもダメ。
      やはり根本的に何かが足りないと思い、エラーメッセージを頼りに英語版のpython MLやforumをあさった結果、何のことは無い、mysql-develを入れてませんでした。
      mysql-develのインストールは、ソース版が無い??ようなので、初めてRPMを使ってインストール。
      MySQLのバージョンが5.0.27なので、develのrpmを探すだけで一苦労しました…。


      ■1つのサーバー内でpythonのバージョン切り替え方法
      ↑↑の副産物として、私のサーバー内ではpython2.4とpython2.5.1が共存する状態になってしまい、MySQLdbとdjangoはpython2.5.1のほうのsite-packagesに入れました。
      /usr/bin/python python2.4
      /usr/local/bin/python python2.5
      という状態ですが、yum等がpython2.4系を前提に書いてあるとしたら動かなくなるとマズイので、djangoを使う時はフルパスで/usr/local/bin/pythonと書くことにして、解決。


      ■MySQLdbのconnections.pyがコケる(MySQLに接続できない)問題の解決
      さて、ようやくローカル環境で作ったdjango製CMSプロジェクトをFTPアップロードし、動作を確認しようとしたら500エラー。
      MySQLに接続できないらしい。
      「Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'」
      こちらを参考に、原因&解決法を考えると…
      mysqlは/var/mysqlにソースからインストールしたもの。普段使ってるmysql.sockは/tmp/mysql.sockにあります。
      多分mysql-develだけrpmでインストールしたせいで、sockの位置が誤ってMySQLdbに伝わってるっぽい。
      my.confをいじって/tmp/mysql.sockから/var/lib/mysql/mysql.sockにsocket位置を変えてしまうことも考えましたが、そうするとPHPのほうも設定を変えないといけなくなる。めんどくさい。
      そこで、/var/lib/mysql/mysql.sockから/tmp/mysql.sockにシンボリックリンクを貼ってお手軽に解決としました。


      おまけ。
      XREA・VPS2つ(2つの違うVPS)にdjangoを入れてみて思ったこと。
      コードの追加・変更がある間は、mod_pythonではなくCGI版であれこれやってるんですが(XREAは常にCGI版ですが^^;)、微妙にサーバーの仕様が違うのか、apacheの設定が違うのか、はたまたブラウザ側の問題なのか、index.cgiとかdjango.cgiをつけてアクセスできる場合・できない場合がある。
      XREAに設置したdjango製のページで、電話で話しながら同時に同じ画面を見ているのにも関わらず、私はindex.cgiありのurls.pyじゃないとダメ、相手はindex.cgiなしのurls.pyじゃないとダメ、なんて変なことが起きたりして。
      面倒でも、CGI版で動かすときはindex.cgiあり/なし両方をurls.pyに併記するのがいいかも。


      スポンサーサイト

      0

        • 2014.12.23 Tuesday
        • -
        • 11:03
        • -
        • -
        • -
        • -
        • by スポンサードリンク

        コメント
        コメントする








           
        この記事のトラックバックURL
        トラックバック

        PR

        calendar

        S M T W T F S
             12
        3456789
        10111213141516
        17181920212223
        24252627282930
        31      
        << May 2020 >>

        twitter

        selected entries

        categories

        archives

        recent comment

        • 私がそれでも名古屋市に住み続ける理由を6つにまとめてみた!
          bose wireless speaker
        • FastCGIでdjango…400エラー???
          levi's
        • さくらインターネットdjangoが突然500エラー!?(Pythonバージョンアップされてた
          salomon running shoes
        • 私がそれでも名古屋市に住み続ける理由を6つにまとめてみた!
          louboutin shoes
        • FastCGIでdjango…400エラー???
          yeezy boost 350
        • さくらインターネットdjangoが突然500エラー!?(Pythonバージョンアップされてた
          jordan 11
        • Silexでエラーページをカスタマイズする方法 : Symfony Advent Calendar 2011 - day 12
          pandora jewelry
        • django対symfony 日本語メール送信(その1 symfony編)
          nike air vapormax
        • 解決!XREAでCGI版Pythonを使ってdjangoを動かす(人柱?)
          kate spade
        • XREAでpython cgiを使ってdjango♪ 追加TIPS
          ultra boost

        recent trackback

        • HTMLの表(TABLE)のセル(TD)に斜線を引くjavascriptライブラリ slash.js 作っちゃいました
          常山日記
        • django対symfony 日本語メール送信(その1 symfony編)
          CPA-LABテクニカル
        • CodeIgniterでユーザー認証
          されどLAMPな日々
        • 久々にdjangoを最新版にしたらHTMLがエスケープされちゃった!!(解決済み)
          常山日記
        • FastCGIを諦めてmod_pythonを使う。Apacheのアップグレード
          サーバー用語集
        • さくらインターネット、sqlite3でdjango@CGI版を使う際の設定メモ
          常山日記
        • さくらインターネット スタンダードプランでdjango使ってる方、DBは?
          mitszoの日記
        • python多次元リストをsort(並べ替え)する方法?
          mitszoの日記
        • フォームから送信した値とrequest.POSTの挙動($_POST@PHPとの比較)
          Humming Via Kitchen
        • 日本語テキストをtruncate@django(Python全般にも??)
          常山日記

        recommend

        links

        profile

        search this site.

        others

        mobile

        qrcode

        powered

        無料ブログ作成サービス JUGEM