【Python】【Apache】 Apache で Python を動かす

■ 設定環境

 * OS : CentOS7
 * Python : Python 2.7.5 (「python -V」で確認)
 * Webサーバ : Apache/2.4.6

■ 初期設定

【1】Apacheをインストールする
【2】Apacheの設定
【3】SELinuxの設定を行う
【4】Python版のHello Worldを作成する
【5】(念のため) Apacheを再起動
【6】動作確認

【1】 Apacheをインストールする

 => 以下の関連記事を参照のこと
https://blogs.yahoo.co.jp/dk521123/36300671.html

【2】Apacheの設定

sudo vi /etc/httpd/conf.d/python.conf
~~~~~~~~
<IfModule alias_module>
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
</IfModule>
<Directory "/var/www/cgi-bin">
    AllowOverride None
    Options ExecCGI
    Require all granted
    AddHandler cgi-script .py .pyc
</Directory>
~~~~~~~~

【3】SELinuxの設定を行う

sudo restorecon -R /var/www/cgi-bin
SELinux については、以下の関連記事を参照のこと。
https://blogs.yahoo.co.jp/dk521123/37293104.html

【4】Python版のHello Worldを作成する

sudo vi /var/www/cgi-bin/hello-world.py
~~~~~~~~~~
#!/usr/bin/python
# coding:utf-8

print("Content-Type: text/html;")
print("")
print("<!DOCTYPE html><body><h1>Hello World!</h1><body></html>")
~~~~~~~~~~

# 権限を設定
sudo chmod 755 /var/www/cgi-bin/hello-world.py

【5】(念のため) Apacheを再起動

sudo systemctl restart apache

【6】動作確認

ブラウザで、以下にアクセスする。(「Hello World!」が表示されたらOK)

http://[Apacheのホスト名・IP]/cgi-bin/hello-world.py


関連記事

Python標準搭載のHTTPサーバを起動する

https://blogs.yahoo.co.jp/dk521123/37410402.html