VirtualHostではなくApache.htaccessに直接PythonWSGIハンドラー

Nov 27 2019

Pythonボトルサーバーの作り方を知っています:

import os
from bottle import route, template, default_app
os.chdir(os.path.dirname(__file__))

@route('/hello')
def hello():
    return template('Hello world')

application = default_app()

Apacheで次のように構成されたWSGIで実行します。

<VirtualHost *:80>
  ServerName example.com
  <Directory />
    AllowOverride All
    Require all granted
  </Directory>
  WSGIScriptAlias / /var/www/wsgi_test/app.wsgi
</VirtualHost>

で直接WSGI設定を行うことは可能.htaccessですか?

回答

Basj Nov 27 2019 at 23:44

私はちょうどドキュメントを見つけました、そして、悲しいことに、答えはノーであるようです:

mod_cgiを使用してCGIアプリケーションをホストする場合、これはScriptAliasディレクティブを使用して行われます。mod_wsgiの場合、ディレクティブは代わりにWSGIScriptAliasと呼ばれます。

WSGIScriptAlias /myapp /usr/local/www/wsgi-scripts/myapp.wsgi

このディレクティブは、メインのApache構成ファイルにのみ表示できます。ディレクティブはサーバースコープで使用できますが、通常は特定のサイトのVirtualHostコンテナー内に配置されます。Location、Directory、またはFilesコンテナディレクティブ内では使用できません。また、「。htaccess」ファイル内でも使用できません。

(私の強調)