7

エラーログ

...
[Fri Sep 07 16:30:14 2012] [error] import os
[Fri Sep 07 16:30:14 2012] [error] ImportError: No module named os

-シェル-

[root@lts5srv1 home]# ldd /root/epd-5.1.0/bin/python
    libpython2.5.so.1.0 => /root/epd-5.1.0/lib/libpython2.5.so.1.0 (0x00002b0829205000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003da0600000)
    libdl.so.2 => /lib64/libdl.so.2 (0x0000003d9fe00000)
    libutil.so.1 => /lib64/libutil.so.1 (0x0000003dadc00000)
    libm.so.6 => /lib64/libm.so.6 (0x0000003da0200000)
    libc.so.6 => /lib64/libc.so.6 (0x0000003d9fa00000)
    /lib64/ld-linux-x86-64.so.2 (0x0000003d9f600000)

誰かがこのエラーを解決する方法を知っていますか?これは、RedhatシステムでPythonスクリプトまたはdjango.wsgiスクリプトを実行しようとしたときに発生する唯一のエラーです。その後、大学のサーバーにWebアプリをアップロードします... VirtualHostを構成します。それが唯一の問題でした、誰か助けてくれませんか?ありがとうございました。

4

1 に答える 1

2

その問題の解決策を (redhat システムで) 見つけました。これは、Django フレームワークに関連する解決策です。

私はPython 2.6をインストールしました(したがって、デフォルトでインストールされたpythonはもう使用しません)。新しいバージョンのPythonと、次のような必要な他のモジュールを使用してDjangoを再インストールしました:( easy_isntallMySQL_python-1.2.3-py2.6 -linux-x86_64setuptoolsmod_wsgi-2.5 ) したがって、インストール後、これらすべてのモジュールは Python 2.6 の site-packages ディレクトリで比較する必要があります: " /usr/local/lib/python2.6/site-packages ".

[root@lts5srv1 Python-2.6.8]# ./configure --enable-shared --prefix=/usr/local
[root@lts5srv1 Python-2.6.8]# make
[root@lts5srv1 Python-2.6.8]# make install

Python 2.6 共有ライブラリとリンクするように mod_wsgi を構成する

[root@lts5srv1 /]# cd /usr/local/lib/python2.6/config/
[root@lts5srv1 config]# ln -s ../../libpython2.6.so .

[root@lts5srv1 mod_wsgi-2.5]# ./configure --with-python=/usr/local/bin/python2.6
[root@lts5srv1 mod_wsgi-2.5]# make 
[root@lts5srv1 mod_wsgi-2.5]# make install

次に、環境変数を設定します。

[root@lts5srv1 Python-2.6.8]# export LD_LIBRARY_PATH=/usr/local/lib/python2.6
[root@lts5srv1 Python-2.6.8]# export LD_RUN_PATH=/usr/lib64/httpd/modules

~/.bashrcを編集し、いくつかの行を追加して、変更を永続的にします。

[root@lts5srv1 ~]# vi ~/.bashrc

# .bashrc

# User specific aliases and functions

PATH=/root/epd-5.1.0/lib/python2.5:/root/epd-5.1.0/bin:${PATH}
PYTHONPATH=/usr/local/lib/python2.6
LD_LIBRARY_PATH=/usr/local/lib/python2.6
LD_RUN_PATH=/usr/lib64/httpd/modules

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

ジャンゴのインストール:

[root@lts5srv1 Django-1.4.1]# /usr/local/bin/python2.6 setup.py install

次に、モジュールが正しく統合されているかどうかを確認します。

[root@lts5srv1 /]# ldd /usr/lib64/httpd/modules/mod_wsgi.so
[root@lts5srv1 /]# ldd /usr/local/bin/python2.6
于 2012-09-11T09:50:58.760 に答える