[初回公開] 2019年11月13日
Python は世界中で使われるプログラム言語の 1 つで、ウェブアプリケーションにおいてはモジュールが豊富に用意されているので初心者にも手が付けやすく、最近では RaspberryPi など IoT 機器やセンサーの制御にも利用されており、RedHat や CentOS など Linux で Python を利用する方法について紹介する。
このページの目次
1.Python とは
Python とは、サーバやパソコンで動作するスクリプトで、人工知能やデータ解析など様々な用途に利用されるプログラム言語である。
ブラウザで表示するウェブサイトやウェブアプリケーションの開発にも用いられる。
Python は無料で利用でき、ライブラリと呼ばれる機能を追加インストールすることで自分でプログラムせずとも簡単なコーディングで開発できるのが特徴である。
2.Linux にインストールされている Python とは
RedHat や CentOS など Linux 系の OS は最小構成でインストールしても Python は初期から標準インストールされているので、別途 Python をインストールする必要がない。
ただし、RedHat7 など古い OS バージョンは初期インストールされている Python のバージョンは 2.7 系となり古いため、最新のバージョン 3 系をインストールする際は別途インストールが必要になる。
インストールされている Python のバージョンを確認するコマンドは下記となる。
# python --version Python 2.7.5
尚、3 系をインストールすると 2 系と 3 系は共存した状態になるため、3 系のバージョンを確認を行う場合は下記となる。
現段階ではまだインストールしていないので「見つからない」と表示される。
# python3 --version -bash: python3: コマンドが見つかりません
3.Python スクリプトで Hello World を表示する方法
Python スクリプトで Hello World を表示する方法には、TeraTerm(テラターム)など SSH でコマンド操作するコンソールで直接実行する方法と、Phthon スクリプトをウェブアプリケーション化してブラウザで表示させる方法がある。
今回は Linux サーバの CentOS 上で Python を動作させるとともに、ブラウザでプログラムのサンプルコードでよく用いられる「Hello World」の表示をさせるためにウェブサーバ(Apache)の設定を行う流れが次の通りである。
3-1.サーバのコンソール上で Python を実行する方法
サーバのコンソール上で Python を実行する方法は、Python スクリプトを任意のディレクトリに作成して python コマンドで実行するだけである。
Python が動作するファイルは拡張子 .py となっており、その中に処理内容をプログラムする。
ブラウザで表示させる場合はウェブサーバの公開ディレクトリに Python スクリプトを設置する必要があるため、後述する。
# cd /var/www/html/ → 公開ディレクトリに移動 # mkdir python → Python スクリプトを設置するディレクトリ作成 # cd python/
# vi index.py
→ print("Hello World!") と記入して保存
Python スクリプトの準備ができれば SSH などコマンドで操作できるコンソール上で Python が正常に動作するか確認を行う。
Python コマンドの後ろにスクリプトのファイル名を入力すると実行できる。
# python index.py
3-2.ウェブサーバの Apache で Python を表示する設定方法
前述では既にウェブサーバの公開ディレクトリに Python スクリプトを設置した状態だが、このままブラウザでアクセスすると Python スクリプトに記述した内容がそのまま表示されてしまい、処理するソースコードもそのままブラウザで表示されてしまう。
そのため、ソースコードは表示させずに純粋に Python が実行した結果を返してブラウザに表示させるためにはウェブサーバの設定が必要となる。
今回はウェブサーバとして Apache を利用することとし、Apache の設定ファイルとなる /etc/httpd/conf/httpd.conf を開く。
># vi /etc/httpd/conf/httpd.conf <Directory "/var/www/html"> Options FollowSymLinks ▼ Options FollowSymLinks ExecCGI → CGI が動作する設定 </Directory> <IfModule mime_module> #AddHandler cgi-script .cgi ▼ AddHandler cgi-script .cgi .py → .py を CGI と認識させる </IfModule>
ウェブサーバの設定ファイルを変更した後は内容を適用するためにサービス再起動を実施する。
# systemctl restart httpd.service
加えて、もう 1 つ設定が必要となり、Apache の設定では .py が CGI として動作するためにパーミッションを変更して実行権限を与える必要がある。
# chmod 755 index.py → 実行権限を付与 # vi index.py → 再度 Python スクリプトを開く #!/usr/bin/python → Python として動作する一行を追記 print 'Content-Type: text/html\n' → ブラウザで HTML として表示させるため追記 print "Hello world!" → Hello world を表示させる実行文
この状態でブラウザでアクセスすると Python スクリプトがウェブアプリケーションとして実行されブラウザでソースコードは表示されずに実行結果の「Hello World」だけが表示される。
http://[サーバの IP またはホスト名]/python/index.py
今回は公開ディレクトリの root 直下にディレクトリ「python」 の中にスクリプトを配置したので、ブラウザでアクセスする場合の URL は上記のようになる。
また、index.py の入力を省略して Python スクリプトで構成していることを利用者に開示したくない場合は、Apache の設定で index の名称のファイルは省略してアクセスできる設定を httpd.conf 内の DirectoryIndex で index.py を追記することで省略してアクセスすることが可能になる。
関連記事
Windows OS を 32bit 版から 64bit 版にする方法
Windows10 のサポートが2025年10月14日に迎えるにあたり、多くの企業や団体では Windows11 への切り替えが開始または検討されているが、Windows10 から Windows11 にアップグレードする際に Windows10 が 32bit 版の場合は一度…
Microsoft Edge の Image Creator で生成型 AI の画像を作成する方法
生成型 AI とは ChatGPT など対話型で文章作成やデータ分析を行う人工知能のことだが、こちらの指示で画像生成を行うことも可能で、ブラウザの Microsoft Edge に搭載されている Image Creator を利用してイラストを描いた…
Microsoft Edge のサイドバーを非表示/表示する方法
ウェブサイトを閲覧するブラウザ「Microsoft Edge」は検索や生成 AI が通常機能として搭載され、サイドバーから利用できるようになったがサイトを大きく表示できなくなったり、機能を利用しない人にとっては不要なので、この…