レンタルサーバー ロリポップ に、軽量Pythonフレームワーク Bottle をインストールして動かしてみます!🎉

📂 ファイル構成

myapp/
 ├── bottle.py   ← Bottleの本体(ダウンロードする)
 ├── app.py      ← 実行するPythonスクリプト
 ├── .htaccess   ← Apacheの設定ファイル

🔽 bottle.py をダウンロード

以下のURLから bottle.py をダウンロードして myapp フォルダに保存します。 📎 bottle.py ダウンロードリンク

🖥 まずはローカルでテスト 💡

ターミナルで以下を実行👇

$ cd myapp
$ python app.py

そしてブラウザで http://localhost:8080/hello/world にアクセス!

📜 app.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)

http://localhost:8080/hello/world にアクセスすると、 Hello world! と表示されればOK!🎯

🌍 ロリポップで動かす 🚀

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')

🔧 パーミッション設定

app.py の実行権限を 700 に設定します。

$ chmod 700 app.py

🔼 ファイルをアップロード

ファイルを ロリポップ にアップロードし、以下のようなURLでアクセス! 🌍

📌 http://berry.tw/myapp/app.py/hello/world

⚙️ ロリポップの設定(.htaccess)

.htaccess に以下の内容を記述して URLをスッキリさせる

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /myapp/app.py/$1 [QSA,L]

🎛 パーミッション設定(重要!)

ファイル/ディレクトリ パーミッション
HTML・画像ファイル 604 (rw—-r–)
CGI実行ファイル(app.py など) 700 (rwx——)
CGIデータファイル 600 (rw——-)
.htaccess 604 (rw—-r–)
ディレクトリ 705 (rwx—r-x)

📦 pip をロリポップにインストールする 🛠️

ロリポップで pip を使うには以下の手順を実行👇

$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
$ python3 get-pip.py --user
$ /home/users/1/[user]/.local/bin/pip

💡 エラーが出た場合

RuntimeError: Python 3.5 or later is required

⬆️ このエラーが出たら、 サーバーのPythonのバージョンを最新に更新してください! 🚀

これで ロリポップでBottleが動くようになります!🎉 お疲れ様でした!😆🍻