Changes between Version 2 and Version 3 of TracModWSGI


Ignore:
Timestamp:
12/07/15 15:40:17 (8 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TracModWSGI

    v2 v3  
    66[[PageOutline(2-3,Overview,inline)]] 
    77 
    8 == `trac.wsgi` スクリプト == #Thetrac.wsgiscript 
     8== `trac.wsgi` スクリプト == #trac.wsgiscript 
    99 
    1010Trac は以下に記すスクリプトによって mod_wsgi のトップで実行されます。これらスクリプトは単なる Python ファイルで、通常は `.wsgi` という拡張子で保存されます。 
     
    7373スクリプトは Trac environment のサブディレクトリにあります。 
    7474 
    75 [http://trac.edgewall.org/wiki/TracInstall#cgi-bin Trac cgi-bin ディレクトリを生成する] のならば、Apache の設定ファイルには以下のように記述してください。 
     75[trac:TracInstall#cgi-bin Trac cgi-bin ディレクトリを生成する] のならば、Apache の設定ファイルには以下のように記述してください: 
    7676 
    7777{{{ 
     
    8585}}} 
    8686 
    87 Apache がスクリプトを起動する為には、スクリプトが含まれるディレクトリまで完全に Apache がアクセスできなければなりません。 `WSGIApplicationGroup` ディレクティブを使用すると、常に mod_wsgi が作成した最初の Python インタプリタ内で Trac が起動することが保証されます; これは Trac で使用している Subversion の Python バインディングがサブインタプリタでは動作しないことがあるため必要になります。リクエストがハングし、 Apache がクラッシュしたような結果が返ります。この設定を行った後は Apache を再起動しないと反映されません。 
     87Apache がスクリプトを起動する為には、スクリプトが含まれるディレクトリまで完全に Apache がアクセスできなければなりません。 `WSGIApplicationGroup` ディレクティブを使用すると、常に mod_wsgi が作成した最初の Python インタプリタ内で Trac が起動することが保証されますこれは Trac で使用している Subversion の Python バインディングがサブインタプリタでは動作しないことがあるため必要になります。リクエストがハングし、 Apache がクラッシュしたような結果が返ります。この設定を行った後は Apache を再起動しないと反映されません。 
    8888 
    8989Apache, mod_wsgi, Python 本体 (Trac とその依存ライブラリを除く) の設定をテストしたい場合、簡単な wsgi アプリケーションを使用するとリクエストが処理されているか確認することができます (以下に示す内容だけを持つ `.wsgi` スクリプトを使用してください): 
     
    246246 
    247247Note 2: 有効なログインを持っているかの代わりに、 
    248 LDAP グループに所属しているかを要求することができます 
     248LDAP グループに所属しているかを要求することができます: 
    249249{{{ 
    250250    Require ldap-group CN=Trac Users,CN=Users,DC=example,DC=com 
     
    252252 
    253253関連ページ: 
    254   - [http://httpd.apache.org/docs/2.2/mod/mod_authnz_ldap.html mod_authnz_ldap],  mod_authnz_ldap に関するドキュメンテーション 
    255  
    256  - [http://httpd.apache.org/docs/2.2/mod/mod_ldap.html mod_ldap], mod_ldap に関するドキュメンテーション。コネクションプールや共有のキャッシュを提供します 
    257  - [http://trac-hacks.org/wiki/LdapPlugin TracHacks:LdapPlugin], LDAP の TracPermissions を格納するプラグイン 
     254  - [http://httpd.apache.org/docs/2.2/mod/mod_authnz_ldap.html mod_authnz_ldap],  mod_authnz_ldap に関するドキュメンテーション 
     255 
     256 - [http://httpd.apache.org/docs/2.2/mod/mod_ldap.html mod_ldap], mod_ldap に関するドキュメンテーション。コネクションプールや共有のキャッシュを提供します 
     257 - [http://trac-hacks.org/wiki/LdapPlugin TracHacks:LdapPlugin], LDAP の TracPermissions を格納するプラグイン 
    258258 
    259259=== SSPI 認証 === #UsingSSPIAuthentication 
     
    280280`SSPIOmitDomain On` と代わりに設定してください。 
    281281 
    282 SSPI 認証に関する共通の問題: [http://trac.edgewall.org/ticket/1055 本家チケット 1055], [http://trac.edgewall.org/ticket/1168 本家チケット 1168], [http://trac.edgewall.org/ticket/3338 本家チケット 3338] 。 
     282SSPI 認証に関する共通の問題: [trac:#1055 本家チケット 1055], [trac:#1168 本家チケット 1168], [trac:#3338 本家チケット 3338] 。 
    283283 
    284284[trac:TracOnWindows/Advanced] も参照してください。 
     
    315315 
    316316 
    317 例えば、 trac を !http://trac.my-proj.my-site.org としてホストし、`/home/trac-for-my-proj` フォルダから起動する場合で、 {{{the-env}}} を作成するために、 `trac-admin the-env initenv` コマンドを使用し、 `the-deploy` フォルダを作成するために、 `trac-admin the-env deploy the-deploy` コマンドを使用した場合です: 
     317例えば、 trac を !http://trac.my-proj.my-site.org としてホストし、`/home/trac-for-my-proj` フォルダから起動する場合で、 `the-env` を作成するために、 `trac-admin the-env initenv` コマンドを使用し、 `the-deploy` フォルダを作成するために、 `trac-admin the-env deploy the-deploy` コマンドを使用した場合です: 
    318318 
    319319htpasswd ファイルを作成します: 
     
    380380 
    381381 
    382 == Trac と PostgreSQL == #TracwithPostgreSQL 
     382=== Trac と PostgreSQL === #TracwithPostgreSQL 
    383383 
    384384mod_wsgi アダプタを使用し、 Trac のインスタンスを複数ホストしている場合に、 PostgreSQL (もしかすると MySQL も?)をデータベースバックエンドとして使用していると、大量のデータベース接続が生成され、PostgreSQL のプロセスも大量に発生してしまう''かも''しれません。 
     
    386386荒々しい方法ですが解決策として、Trac が持つコネクションプールを無効化する方法があります。これは `trac.db.postgres_backend` の `PostgreSQLConnection` クラスに `poolable = False` と設定することで適用できます。 
    387387 
    388 この方法を適用するために、 Trac のソースを変更する必要はありません。以下に示す行を trac.wsgi に追加してください: 
     388この方法を適用するために、 Trac のソースを変更する必要はありません。以下に示す行を `trac.wsgi` に追加してください: 
    389389 
    390390{{{ 
     
    410410 
    411411---- 
    412 See also:  TracGuide, TracInstall, [wiki:TracFastCgi FastCGI], [wiki:TracModPython ModPython], [http://trac.edgewall.org/wiki/TracNginxRecipe TracNginxRecipe] 
     412See also:  TracGuide, TracInstall, [wiki:TracFastCgi FastCGI], [wiki:TracModPython ModPython], [trac:TracNginxRecipe TracNginxRecipe]