2

Zend Studio / Zend Server を使用して PHP ベースの Web サイトを開発していますが、現在は Python のコースを受講しており、Django を学びたいと考えています。

私は Windows 7 AMD-64 マシンを持っており、64 ビットの Python 2.6 (コースではバージョン 2.6 が必要です) を使用していますが、その部分は正常に動作します。

私の問題は、mod_wsgi を Zend Server の 32 ビット Apache インストールに追加しようとしていることです。Python 2.6 用の mod_wsgi 32 ビット Windows バイナリのいくつかのバージョンをダウンロードし、それらを C:Program Files (x86)\Zend\Apache2\modules ディレクトリにコピーし、httpd.conf を編集して追加しました。

LoadModule wsgi_module modules/mod_wsgi.so

Apached2.2-Zend を再起動し、コマンド プロンプトで mod_wsgi が読み込まれたかどうかを次のようにテストしました。

httpd -t -M

ただし、ロードされたモジュールのリストに mod_wsgi が表示されません。

64 ビットの Python 2.6 と 32 ビットの ZendServer Apache2.2 を組み合わせて使用​​することはできないため、これは機能しない可能性があると最終的に判断しました。

だからここに私の質問の要点があります:

Apache 2.2 の 64 ビット バージョンをインストールして、それを ZendServer Apache2.2 と同時に実行できますか (ただし、64 ビット バージョンを構成して、ZendSever Apache2.2 と同じポートでリッスンしないようにします)。私のローカル PHP 仮想ホストはまだ動作しますか? この Apache で mod_wsgi をロードできるようになると、運が良くなるでしょうか?

または、Python の 32 ビット バージョンをインストールする方がよいでしょうか (おそらく Python 2.8 のようなより高いバージョンです。これは、私のコースワークには Python 2.6 しか必要なく、自分の Web サイト開発のためだけに Django を動作させようとしているからです)。 ? 私の ZendServer Apache2.2 が mod_wsgi をロードできるようになりますか? また、Windows 7 マシンに両方の Python がインストールされている場合、Apache はどのように Python のインストールを使用する必要があるかを判断しますか?

4

1 に答える 1

1

Apache 2.2 の 64 ビット バージョンをインストールして、それを ZendServer Apache2.2 と同時に実行できますか (ただし、64 ビット バージョンを構成して、ZendSever Apache2.2 と同じポートでリッスンしないようにします)

はい、できます。

最も困難な問題、つまり同じポートでリッスンできないことについてはすでに考えました。

関連する問題として、一部のユーザーのネットワークでは、たとえばポート 8080 への発信接続が許可されていないことがあります。これに対処したい場合は、ZendServer を他のサーバーのフォワード プロキシとして機能するように設定する必要があります。しかし、それは本当にそれについてです。

他の唯一の問題は、Apache の 2 つのコピーが同じ構成ファイルなどを共有しようとしないことを確認する必要があることです (また、両方を PATH に含めたくない場合もあります)。


または、32 ビット バージョンの Python (おそらく Python 2.8 などのより高いバージョン) をインストールする方がよいでしょうか。

2.8 はありません。最後の 2.x バージョンは 2.7 です (ただし、引き続きバグ修正が行われ、2.7.5 まで更新されます)。より高いものが必要な場合は、3.x に移行する必要があります。必要なものがすべて 3.3 で動作し (そして Django 1.5+ も動作し)、小さな変更を学習する意思がある場合は、これを検討する必要があります。しかし、すでに知っていることに固執したい場合は、2.7.5 を入手してください。

私の ZendServer Apache2.2 が mod_wsgi をロードできるようになりますか?

Python 2.6 用の を使用しmod_wsgiて Python 2.7 または 3.3 をインストールしている場合やmod_wsgi、ネイティブ Python 用の を使用して Cygwin Python をインストールしている場合などではありません。 Python 2.6 用の mod_wsgi 32 ビット Windows バイナリの ")。

それ以外は、はい。すべてが正しく構築および構成されている限り、機能します。(あなたがダウンロードしてインストールした特定のパッケージがわからないので、もちろん、それらが動作するかどうかは約束できません。)

また、Windows 7 マシンに両方の Python がインストールされている場合、Apache はどのように Python のインストールを使用する必要があるかを判断しますか?

これは構成可能です。デフォルトでは、で最初に見つかったもの、またはPEP 397PATHで説明されている Python コマンドラインランチャーで使用されるように、レジストリ設定で「デフォルトの python 2.x」として表示されるものを使用することだと思います。(もちろん、その Python がビルド対象の Python でない場合、起動に失敗します。)

于 2013-05-21T00:41:33.603 に答える