スタードメインでドメインを購入すると使える無料サーバーでPython3のCGIが使えるみたいなのでプログラミングの勉強がてら使ってみました。
目次
- 簡単なおみくじプログラムの作成
- .htaccessの設定
- .htaccessファイルとは
- パーミッションの設定
- パーミッションとは
- サンプルファイルの実行
簡単なおみくじプログラムの作成
#!/usr/bin/python3.6
# -*- coding: utf-8 -*-
import random
import sys
import io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
omikuji = ['大吉', '中吉','末吉', '吉', '小吉', '凶', '大凶']
print('Content-Type: text/html;charset=utf-8\n\n')
print('<font size="7" color="red">')
print(random.choice(omikuji))
print('</font>')一行目のコード<span class="has-inline-color has-blue-color">#!/usr/bin/python3.6</span>でPythonのバージョンを指定しています。スターサーバーではバージョン3.6と3.4 と2.7が使え今回はバージョン3.6を使っています。ブラウザで日本語を表示するために<span class="has-inline-color has-blue-color">sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')</span>のコードを追加しています。
ファイルを保存するときに注意する点は文字コードと改行コードの設定です。文字コードはUTF-8 BOM無し、改行コードはLFで設定します。
.htaccessの設定
続いて.htaccessファイルの設定をしていきます。この設定は拡張子を.pyでファイルを使用するためにする設定です。拡張子.cgiでファイルを使用する場合はこの設定は必要ありません。
.htaccessファイルを開き<span class="has-inline-color has-blue-color">AddHandler cgi-script .py</span>と追記します。これで拡張子.pyファイルを使用できます。
.htaccessファイルとは
.htaccessはサーバーやホームページの設定をフォルダごとに変更するためのファイルです。
パーミッションの設定
アップロードしたファイルのパーミッション設定をしていきます。705 / 755 のいずれかに設定します。
パーミッションとは
パーミッションとは、ファイルやフォルダにアクセスするための権限のことです。プログラムを実行するためにはパーミッションの設定が必要です。cgiプログラムの場合、正しいパーミッションを設定しないとエラーとなり動作しないことがあります。パーミッションは、ファイルやフォルダの種類毎に適切に設定することにより、セキュリティを高めることにもつながります。
サンプルファイルの実行
ボタンを押すとおみくじの結果が表示されます。