プロバイダ: さくらインターネットVPS
OS: CentOS7
Python3.6を手動でインストール済み
まず、Pythonがインストールされているパスを調べておきます。
通常は /usr/bin/python3.6
ですが、各自環境に合わせてください。
◆cgi-binディレクトリ内でPythonを実行させる場合
1./etc/httpd/conf/httpd.conf 内の以下赤文字部分を追記
<IfModule alias_module>
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
</IfModule>
<Directory "/var/www/cgi-bin">
AllowOverride None
#Options None #無効化
Options ExecCGI #追記
Require all granted
AddHandler cgi-script .py .pyc #追記
</Directory>
※httpd.conf編集後、Apacheを再起動($ systemctl restart httpd)すること。
2./var/www/cgi-bin 内に以下の内容の hello.py を保存する。
#!/usr/bin/python3.6
import ioimport sys# 日本語を使用する場合、出力ストリームの文字エンコーディングを指定sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
# HTTP ヘッダprint('Content-Type: text/html; charset=utf-8')print() # blank line, end of headers
# HTML 本文print('<html><body>')print('Hello, world.<br>')print('こんにちは、世界。<br>')print('</body></html>')
※hello.pyファイルは、改行コード:LF、パーミッション:755にすること。
3.http://ホスト名/cgi-bin/hello.py にアクセスすると実行される。
◆ドキュメントルート以下で実行する場合
ドキュメントルート例:/var/www/html/python
1.以下の内容で /var/www/html/python/.htaccessファイルを保存する。
Options +ExecCGI
AddHandler cgi-script .py .pyc
2.前述と同じ内容の /var/www/html/python/hello.py を保存する。
3.http://ホスト名/python/hello.py にアクセスすると実行される。
参考
CentOS7上でPython3をCGIとして動かすまで
CentOS7上でPython3をCGIとして動かすまで
https://qiita.com/kusyami_p/items/7ca4fd774c12fc6324a2
pythonファイルをCGIとしてレンタルサーバー上でphp経由でCorn実行することで「500 Internal Server Error」を回避する方法 - なろう分析記録
https://karupoimou.hatenablog.com/entry/2019/05/21/184126
0 件のコメント:
コメントを投稿