34652


**Q1.指定ディレクトリ以下で「.php」と「.wsgi」を同時に動かすことは可能？**  
・「.phpファイル」へアクセスしたらPHP、「.wsgiファイル」へアクセスしたらPythonを動かすことは出来るでしょうか？

* * *

**Q2.指定ディレクトリ以下の「.wsgi」ファイルへアクセスしたらPythonを動かすよう設定することは出来るでしょうか？**  
・現状下記で「Hello
World」は表示されるのですが、このやり方だと、表示する「.wsgi」ファイル数だけWSGIScriptAliasを記述しなければならず面倒です

> /etc/httpd/conf.d/wsgi.conf
[code]

     LoadModule wsgi_module modules/mod_wsgi.so
     WSGIScriptAlias /var/www/hoge/hello.wsgi /var/www/hoge/hello.wsgi
    
[/code]

・下記のような感じにしてapp.wsgiへファイル名変更したらイケるかなと思ったのですが、Forbiddenエラーになりました  
・WSGIScriptAlias は必須？

[code]

    <Directory /var/www/hoge/>
    
      Options ExecCGI MultiViews Indexes
      MultiViewsMatch Handlers
    
      AddHandler wsgi-script .py
      AddHandler wsgi-script .wsgi
    
      DirectoryIndex index.html index.py app.wsgi
    
      Order allow,deny
      Allow from all
    
    </Directory>
    
[/code]

* * *

**Q3.バーチャルホストとの関係性について**  
・現状下記のような感じで運用しているのですが、こことは別に新たにwsgi.confファイルを作成するのでしょうか？  
・それとも、既存のDirectory内に新たに処理を追記していくのでしょうか？

[code]

    <VirtualHost *:80>
      ServerName hoge1.jp
      DocumentRoot "/var/www/hoge1/a.hoge1.jp"
      DirectoryIndex index.html index.php
      AddDefaultCharset UTF-8
      <Directory "/var/www/hoge1/a.hoge1.jp">
        AllowOverride All
      </Directory>
    </VirtualHost>
    
[/code]


CC BY-SA 3.0
2017-05-11T12:57:25.693
34641
2017-05-12T02:55:10.473
7886
question
python centos
「Python」「mod_wsgi」をApacheで動かす際の設定について


Q1,Q2 => 可能です。  
WSGIScriptAlias は必須ではありません。

質問の設定にあるように、Options で `ExecCGI` を許可し、`AddHandler wsgi-script .wsgi`
を設定していれば動くと思うのですが、Forbidden となったときのエラーログに何か記録されていませんでしょうか。

あるいは、以下のように、`FilesMatch` で拡張子と紐付けてもいいと思います。  
(httpd-2.4.6 / CentOS 7)

[code]

    <FilesMatch \.wsgi$>
        SetHandler wsgi-script
        Options +ExecCGI
    </FilesMatch>
    
[/code]


CC BY-SA 3.0
2017-05-12T02:55:10.473
34652
2017-05-12T02:55:10.473
4603
34641
answer