MampでPythonを使う方法

Pocket

Pythonでウェブページを作りたいと思います。
サーバはロリポップを使っているのですがこちらでウェブページを作ることができました。
そこでローカル環境でも作れるようになれば開発ができます。

調べるとそのものズバリのページが見つかりました。

MAMPでPython3をブラウザに表示 - Qiita

このページのとおり対応したところ簡単に表示することができました。
ただし引っかかった部分もあったのでメモとして残しておきます。

macOS 10.14.6
Python 3.6.5
Google Chrome 76

httpd.confの修正

Finderでhttpd.confを検索します。
私の環境では/Applications/MAMP/cgi-bin/にありました。
このファイルを開きます。
#AddHandler cgi-script .cgi
となっている箇所を
AddHandler cgi-script .cgi .py
と修正します。#を削除し.pyを追加します。
保存します。

Mampを起動します。

Pythonの場所

Pythonのインタプリタの場所を探します。
$ which python3
とするとわかります。

ファイルの準備

test.pyを次の通り作成します。

1
2
3
4
5
6
7
8
9
10
11
#!/Library/Frameworks/Python.framework/Versions/3.6/bin/python3
import sys
import io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding="utf-8")
print("Content-Type: text/html; charset=utf-8")
print("")
print("<html>")
print("<body>")
print("<p>Hello World.</p>")
print("</body>")
print("</html>")

1行目はPythonインタプリタの場所です。先頭に#!を付けます。
2行目から4行目は日本語を使うためです。
5行目はHTMLを使うためです。
6行目のprint(“”)は一見、ムダですが、ないとエラーになります。改行に関する問題で、このようにしないと「Premature end of script headers」というエラーが出るようです。
7行目以降に通常のHTMLを書きます。

実行権限の変更

ターミナルで
$ chmod 755 test.py
とします。

エラーが出た場合

Finderでapache_error.logを検索します。
私の環境では/Applications/MAMP/logs/にありました。
エラーはこのログファイルに出力されます。

関連記事

[ 2019年9月24日 | カテゴリー: デジタル | タグ: ]

« | »

コメント

  1. […] ウェブページを表示する方法については「MampでPythonを使う方法 | You Look Too Cool」を参考にしてください。 […]

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

送信してください。


タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報