ローカルPCでの開発中は逐一エラーを確認しながらデバッグできますが、サーバーにアップロードしてしまうと、デバッグが大変になってしまいます。
そういう時は、cgitb
で簡単にデバッグできます。
#!/usr/bin/env python
import cgitb
cgitb.enable()
# 以下、実行したいスクリプト
raise Exception('error')
こんな感じにしておけば、エラーが発生した場所や内容が確認できるようになります。
ローカルPCでの開発中は逐一エラーを確認しながらデバッグできますが、サーバーにアップロードしてしまうと、デバッグが大変になってしまいます。
そういう時は、cgitb
で簡単にデバッグできます。
#!/usr/bin/env python
import cgitb
cgitb.enable()
# 以下、実行したいスクリプト
raise Exception('error')
こんな感じにしておけば、エラーが発生した場所や内容が確認できるようになります。
ロリポップのサーバーを新サーバーに移行したら、Pythonのフレームワーク「web.py」が使えなくなってしまいました。
WEBサーバー移設メンテナンスのお知らせ – 2016年01月15日 12時00分 / メンテナンス情報 / お知らせ – レンタルサーバーならロリポップ!
https://lolipop.jp/info/mainte/5189/
原因はよく分かりませんがmime.types
でPermission deniedとなるようです。注
Permission denied: '/etc/mime.types'
ということで、システムを少し変更してみました。
web.pyはPython3で使えないため、システムを移行させる良い機会だったと考えることにしたいと思います。
注 実は、このエラーには経験があって、xreaのサーバーが更新された際にもweb.pyでエラーになり、web.pyの利用を断念したことがあります。GMO系列のサーバーということで、同じ理由なのかなと想像します。(さくらインターネットでは問題なく使えています。)
シェル(bash)のfor
ループに関する覚え書き
for
ループ$ for i in 1 aa 012; do echo $i; done
1
aa
012
$ for i in {1..100} do echo $i; done
1
2
3
... 以下、省略