web-dev-qa-db-ja.com

Apache経由で実行されるスクリプトのCentOSでPython=バージョンを変更する方法は?

私はsite.com/weather/a1.pyと言うサイトを持っています

このファイルを実行しようとすると、Pythonのバージョンが2.6と表示されますが、PuTTY経由でターミナルにログインして実行すると、Pythonバージョン3.6

Cgi-binを介して実行されるファイルにPython3.6を使用する方法について誰かが教えてもらえますか?

注:私は最近ここでPython=バージョンを変更しました

1
Shan

Apacheには2.6用のmod_wsgiApacheモジュールが必要です。そのため、Apacheは古いpythonバージョンを参照します。以下のコマンドを使用して、新しいバージョンのmod_wsgiをインストールできます。

Redhat/Centos

利用可能なmod_wsgiバージョンを一覧表示します

yum  list *mod_wsgi*

正しいバージョンを選択し、yumでインストールします。

yum install python36u-mod_wsgi

bunt

Sudo apt-get -y install libapache2-mod-wsgi-py3

インストールが成功した後、Apacheを再インストールすると、Apache構成にpythonバージョン3.xがロードされます。

特にCentOS用

上記を行った後、これらも行う必要があります

1.Remove mod_python.so from Apache httpd.conf 
2.python.conf might be available either in /etc/httpd/conf or /etc/http/conf.d
3.Comment out all the lines in it
4.Add WSGI alias as mentioned over [here][1]
5.Then restart Apache
1
Vaibhav Panmand

最初に、3.6バージョンのpythonがどこから来たかを確認します。

which python

また、python3がインストールされている場所を確認してください。

which python3

ls -lを使用して、いずれかのパスがソフトリンクであるかどうかを確認します。 a1.pyの最初の行を追加/変更して、適切なシャバン行を使用します。例えば。

#!/usr/local/bin/python3

ApacheサーバーのPATHは、使用しているものと異なる可能性が高いことに注意してください。

1
Ken Schumack