スマートフォン・タブレットからインターネットサーバーオペレーション 2014

APPW.jp 2014

Bottle – Cork サンプルを Apache mod_wsgi で試してみます

Python Bottle フレームワークで認証機能を使用してみたいと思い調べていたところ、Cork が公開されていましたので、そのサンプルを試してみることにしました。

ドキュメント等が公開されています。

Cork – Authentication for the Bottle web framework http://cork.firelet.net

インストールは、pip または easy_instsll による方法が紹介されています。

[shell]
$ pip install bottle-cork
[/shell]
または、
[shell]
$ easy_install bottle-cork
[/shell]

サンプルも公開されています。

https://github.com/FedericoCeratto/bottle-cork

今回は、MongoDB backend のサンプルを利用してみます。

bottle-cork / examples にある
simple_webapp_using_mongodb.py
です。

bottle-cork / examples / views にサンプルのテンプレートがあります。

これらをダウンロードして、/home/hoge/cork/examples に配置しました。

mod_wsgi 用に adapter.wsgi を用意します。

[python]
import sys, os, bottle
dirpath = os.path.dirname(os.path.abspath(__file__))
sys.path.append(dirpath)
os.chdir(dirpath)

from simple_webapp_using_mongodb import app
application = app
[/python]

Apache の VirtualHost に WSGI 用の記述を加えます。

[shell]
WSGIDaemonProcess wsgi-cork user=hoge group=hoge processes=1 threads=5 python-path=/usr/local/lib/python2.7/site-packages
WSGIScriptAlias /cork /home/hoge/cork/examples/adapter.wsgi

<Directory /home/hoge/cork/examples>
WSGIProcessGroup wsgi-cork
WSGIApplicationGroup %{GLOBAL}
Order deny,allow
Allow from all
</Directory>
[/shell]

httpd を再起動します。

[shell]
$ service httpd restart
[/shell]

image

 

VirtualHost で Alias を /cork としたので、テンプレートなどもこれに合わせて修正しました。

また、起動2回目には populate_mongodb_backend() 内のカラムインサートは不要となります。

さて、この Cork のサンプルでは、ワンタイムキー(ワンタイムパスワード)リンクを、登録メールアドレスに送信して認証する方法でログインパスワードを変更する機能も盛り込まれています。

さらに調べながら利用を進めてみたいと思います。

「さくらのVPS」2014年11月27日にリニューアル

SSL ボックス が SHA-2 の SSL 証明書発行に対応

Mosquitto の Bridge を SSL で試します

Mosquitto へ SSL で接続してみる

Mosquitto の SSL 対応を試してみる

Mosquitto Publish と Server-Sent Events で Python チャットサンプルを改造

Python WebSocket のチャットサンプルに、MongoDB 保存を付け加えました

MongoDB に保存した Mosquitto の payload を Server-Sent Events で表示してみる

Mosquitto の payload を MongoDB に保存してみる

Mosquitto を VPN で試しました

via IPv4

カテゴリー