DjangoをDenwer + mod_pythonの下にデプロイします。 個人的な経験

私はラップトップで前述の環境を上げることにしましたが、思ったほど簡単ではなかったので、この記事を書くことにしました。 彼女が初心者を助けることを願っています。



必要なもの



おそらく推測するのは難しくありませんが、私は書くことにしました:





DenwerとActivePython 2.5



リストの最初の2つのコンポーネントのインストールプロセスを安全に省略できると思います。 デフォルトで提案されているとおりにdenverがインストールされていると想定します: C:\WebServers



、仮想ディスクZ:\

この場合のPythonはC:\WebServers\usr\local\python



配置する必要があります



ただし、djangoをインストールする前に、いくつかのアクションを実行する必要があります。 denwerはシステム全体とは別にインストールされるため、インタープリターへのパスをPath変数に追加する必要があります。



わからない場合は、システムプロパティ>詳細パラメーター>環境変数に移動します

画像



pythonインタープリターへのパスをPath変数に追加します:C:\ WebServers \ usr \ local \ python \

画像



その後、パスを記述せずにインタープリターに連絡できるかどうかを確認できます。 コマンドプロンプトで、実行します

python -V





応答として以下を受信する必要があります。

Python 2.5.1







mod_python、psycopg、\またはmysql-pythonをインストールします



私のようにmod_pythonとデータベースライブラリのWindowsインストーラー(.exe)をダウンロードした場合、これらのインストーラーはWindowsレジストリにインストールされたpython 2.5に関するデータの不足を呪うという事実におそらく出くわすでしょう。



データを手動で入力することにより、この問題を解決します。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\2.5]

[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\2.5\InstallPath]

@="z:\\usr\\local\\python"

[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\2.5\InstallPath\InstallGroup]

@="Python 2.5"

[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\2.5\Modules]

[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\2.5\PythonPath]

@="z:\\usr\\local\\python\\Lib;z:\\usr\\local\\python\\DLLs;z:\\usr\\local\\python\\Lib\\lib-tk"







その後、問題なくインストールが行われます。 mod_pythonのインストール中に、Apacheがインストールされているフォルダー(C:\ WebServers \ usr \ local \ apache \)を指定する必要があることにのみ言及できます。



Djangoのインストール



おそらくこの部分はタイトルに値するものではありませんが、それでも、 bitrixに慣れている人のために、ドキュメントを調べていなかったので、文字通り引用します。

アーカイブを解凍し、コマンドラインを実行して、djangoが解凍されたディレクトリに移動します。 私たちは実施します:

python setup.py install





それだけです。



特定のdenwer仮想ホストで動作するようにmod_pythonを構成する



仮想ホストの1つにプロジェクトを配置し、その時点でphpまたは他のプロジェクトに他のプロジェクトを配置して、他のプロジェクトを引き続き起動するとします。



仮想ホストには個別の設定が必要で、デンバーは仮想ホストのブロックをテンプレートごとに自動的に作成します。 仮想ホストでは、彼はホームフォルダー内のすべてを実行します。



これらのホストの1つが特定のパラメーターを決定するには、httpd.confでこれを行う必要があります。 ただし、この点については、httpd.confファイル自体に詳細に説明されています。



dproject.devでdjangoプロジェクトを作りたいとします。 私は次のことをしました:ディレクトリを作成しました

C:\WebServers\home\dproject.dev\www





次に、コマンドラインでこのディレクトリに移動し、そこにプロジェクトを作成しました

cd C:\WebServers\home\dproject.dev\www\

python C:\WebServers\usr\local\python\Scripts\django-admin.py startproject dproject




cd C:\WebServers\home\dproject.dev\www\

python C:\WebServers\usr\local\python\Scripts\django-admin.py startproject dproject






その結果、ディレクトリC:\WebServers\home\dproject.dev\www\dproject



とプロジェクトファイルが表示されます。



そして最後に、httpd.confに追加された仮想ホストブロック:

 <VirtualHost 127.0.0.1:80> DocumentRoot "Z:/home/dproject.dev/www/dproject" ServerName "dproject.dev" ServerAlias "dproject.dev" "www.dproject.dev" ScriptAlias /cgi/ "/home/dproject/cgi/" ScriptAlias /cgi-bin/ "/home/dproject/cgi-bin/ <Location "/"> SetHandler python-program PythonHandler django.core.handlers.modpython SetEnv DJANGO_SETTINGS_MODULE dproject.settings PythonDebug On PythonPath ['Z:/home/dproject.dev/www'] + sys.path </Location> Alias "/admin_media/" "Z:/usr/local/python/Lib/site-packages/django/contrib/admin/media/" <Location "/admin_media/"> SetHandler None </Location> </VirtualHost> 
      





<VirtualHost 127.0.0.1:80> DocumentRoot "Z:/home/dproject.dev/www/dproject" ServerName "dproject.dev" ServerAlias "dproject.dev" "www.dproject.dev" ScriptAlias /cgi/ "/home/dproject/cgi/" ScriptAlias /cgi-bin/ "/home/dproject/cgi-bin/ <Location "/"> SetHandler python-program PythonHandler django.core.handlers.modpython SetEnv DJANGO_SETTINGS_MODULE dproject.settings PythonDebug On PythonPath ['Z:/home/dproject.dev/www'] + sys.path </Location> Alias "/admin_media/" "Z:/usr/local/python/Lib/site-packages/django/contrib/admin/media/" <Location "/admin_media/"> SetHandler None </Location> </VirtualHost>







ここに書かれているほとんどすべてはドキュメントで説明されています。djangoadmin statics(img、cssなど)にはエイリアス/ admin_media /と対応するLocationブロックが必要であることだけを説明します。 django管理者がこのアドレスを使用するには、作成されたプロジェクトのsettings.pyを修正する必要があります。

ADMIN_MEDIA_PREFIX = '/admin_media/'





以上です。 あなたが成功しなかった場合、私はコメントで助けようとします。



おわりに



良いアドバイスをありがとう。

また、同じプロジェクトのwsgi_moduleをこの記事に接続する手順を追加することもできます。

そして以来 私はWindowsの設定があまり得意ではないので、Pythonプログラムを実行するために毎回pythonを入力する必要がないことを確認できませんでした... python \.manage.py startapp



.\manage.py startapp



はるかに良いでしょう.\manage.py startapp






All Articles