レンタルサーバーのロリポップに Python フレームワーク bottle を入れてみる。
ファイル構成
myapp/ bottle.py app.py .htaccess
bottle.py は https://raw.githubusercontent.com/bottlepy/bottle/master/bottle.py からダウンロード。
from bottle import route, run, template
@route('/hello/<name>')
def index(name):
return template('<b>Hello </b>!', name=name)
run(host='localhost', port=8080)
まずはローカルでテスト
以下のコマンドを実行。
$ cd myapp
$ python app.py
http://localhost:8080/hello/world にアクセス。
ロリポップでテスト
app.py を書き換える。
#!/usr/local/bin/python3
# -*- coding: utf-8 -*-
from bottle import route, run, template
@route('/hello/<name>')
def index(name):
return template('<b>Hello </b>!', name=name)
run(server='cgi')
権限を 700 に設定する。 ファイルをアップロードし、そのアドレスにアクセス。
- 例: http://berry.tw/myapp/app.py/hello/world
ロリポップの設定
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /make_epub/app.py/$1 [QSA,L]
■パーミッション HTML・画像ファイル 604(rw—-r–) CGIの実行ファイル 700(rwx——) CGIのデータファイル 600(rw——-) .htaccessファイル 604(rw—-r–) ディレクトリ 705(rwx—r-x)
ロリポップに pip をインストールしたい
$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
$ python3 get-pip.py --user
- 「RuntimeError: Python 3.5 or later is required」が出た場合は、サーバーをアップデートしてください。