5

mod_wsgi がコンパイル中に python 2.6 を使用し、実行に python 2.7 を使用することを理解したログを調べた後、クライアントを介して apache サーバーを実行するとエラーが発生します。インターネットでいくつかの調査を行った後、次の手順に従いました。

mod-python や mod-wsgi を再コンパイルする必要があります。

モッドを削除

apt-get remove libapache2-mod-python libapache2-mod-wsgi

依存関係を取得する

apt-get build-dep libapache2-mod-python libapache2-mod-wsgi

mod-python をビルドする

mkdir /tmp/python
cd /tmp/python
apt-get source libapache2-mod-python
cd libapache2-mod-python-[x.x.x]
dpkg-buildpackage -rfakeroot -b

mod-wsgi をビルドする

mkdir /tmp/wsgi
cd /tmp/wsgi
apt-get source libapache2-mod-wsgi
cd mod-wsgi-[x.x.x]
dpkg-buildpackage -rfakeroot -b

新しくコンパイルされたパッケージをインストールする

dpkg -i /tmp/python/libapache2-mod-python-[xx].deb /tmp/wsgi/libapache2-mod-wsgi-[xx].deb

バージョンが 3.2 に変更されました。上記の手順でスペースが消費されるのではないかと心配しており、コンパイル中の python は 2.6 から python 3.2 に変更されていますが、実行に使用されている python はまだ 2.7 です。どうすればいいですか?私のApacheサーバーを正常に動作させるために。

エラーログ::::

[Wed Aug 21 11:48:11 2013] [warn] mod_wsgi: Compiled for Python/2.7.2+.
[Wed Aug 21 11:48:11 2013] [warn] mod_wsgi: Runtime using Python/2.7.3.
[Wed Aug 21 11:48:11 2013] [notice] Apache/2.2.22 (Ubuntu) mod_wsgi/3.3 Python/2.7.3 configured -- resuming normal operations
[Wed Aug 21 11:48:36 2013] [notice] caught SIGTERM, shutting down


[Wed Aug 21 22:48:29 2013] [error] child process 1226 still did not exit, sending a SIGKILL
[Wed Aug 21 22:48:30 2013] [notice] caught SIGTERM, shutting down
[Wed Aug 21 22:56:17 2013] [warn] mod_wsgi: Compiled for Python/2.7.2+.
[Wed Aug 21 22:56:17 2013] [warn] mod_wsgi: Runtime using Python/2.7.3.
[Wed Aug 21 22:56:17 2013] [notice] Apache/2.2.22 (Ubuntu) mod_wsgi/3.3 Python/2.7.3 configured -- resuming normal operations
[Thu Aug 22 01:32:12 2013] [notice] caught SIGTERM, shutting down
[Thu Aug 22 01:32:26 2013] [warn] mod_wsgi: Compiled for Python/2.7.2+.
[Thu Aug 22 01:32:26 2013] [warn] mod_wsgi: Runtime using Python/2.7.3.
[Thu Aug 22 01:32:26 2013] [notice] Apache/2.2.22 (Ubuntu) mod_wsgi/3.3 Python/2.7.3 configured -- resuming normal operations
[Thu Aug 22 04:04:48 2013] [notice] child pid 11212 exit signal Segmentation fault (11)
[Thu Aug 22 04:04:48 2013] [notice] caught SIGTERM, shutting down
[Thu Aug 22 04:04:56 2013] [notice] mod_python: Creating 8 session mutexes based on 6 max processes and 25 max threads.
[Thu Aug 22 04:04:56 2013] [notice] mod_python: using mutex_directory /tmp  
[Thu Aug 22 04:04:56 2013] [warn] mod_wsgi: Compiled for Python/3.2.3.
[Thu Aug 22 04:04:56 2013] [warn] mod_wsgi: Runtime using Python/2.7.3.
[Thu Aug 22 04:04:56 2013] [notice] Apache/2.2.22 (Ubuntu) mod_python/3.3.1 Python/2.7.3      mod_wsgi/3.3 configured -- resuming normal operations

ありがとうございました

4

2 に答える 2

1

必要がない場合は、mod_python と mod_wsgi を同時にロードしないでください。それらは、異なる Python バージョンに対してコンパイルされている可能性があります。表示されている不一致の説明については、次を参照してください。

両方が必要な場合は、両方を同じバージョン用にコンパイルする必要があります。

最近では、通常、新しいプロジェクトに mod_python を使用する正当な理由はありません。

于 2013-08-22T06:05:12.807 に答える
0

追加するために、 libapache2-mod-python をアンインストールしました

sudo apt-get remove libapache2-mod-python

インストールした後、上記のエラーを克服しました

[Thu Aug 22 01:32:26 2013] [warn] mod_wsgi: Compiled for Python/2.7.2+.
[Thu Aug 22 01:32:26 2013] [warn] mod_wsgi: Runtime using Python/2.7.3.
于 2013-11-02T19:12:41.900 に答える