レンタルサーバーでPythonのCGI

スポンサーリンク

Hello World

このブログが動作しているCoreServerで、PythonのCGIを動かしてみた。まずは、よくあるHello Worldから。

拡張子.pyのファイルがCGIスクリプトだと認識させるために、スクリプトを置くディレクトリに.htaccessを作る。内容は次の1行だけ。

AddHandler cgi-script .py

作ったPythonスクリプトをサーバーに置いたら、パーミッションを707あたりにしておく。「Hello World」までは簡単にできたが、日本語で「こんにちは」と表示させるのに少し手こずった。文字コード周りを手直しして完成したソースコードがこれ。

#!/usr/local/bin/python3

import io
import sys
import cgi
import cgitb
cgitb.enable()
sys.stdin  = io.TextIOWrapper(sys.stdin.buffer, encoding='utf-8')
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
sys.stderr = io.TextIOWrapper(sys.stderr.buffer, encoding='utf-8')

html = '''Content-Type: text/html

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>
Hello World
</title>
</head>
<body>
Hello World!!! こんにちは!
</body>
</html>
'''
print(html)

実際に動いています。

ここから動作確認

 

 

コメント

タイトルとURLをコピーしました