Evernoteで店とかの位置をメモして検索

12月 12, 2011 in PC, Phone, その他生活, 環境改善/Lifehack by ezofurpine

前にこんなことを呟いたりしてたんですが、

http://twitter.com/ezofurpine/status/127385033710383104
http://twitter.com/ezofurpine/status/127385186999599106

食べログだっけ?なんかそういうグルメナビ系のサービスとかはあると思うんですが、そうじゃなくて、自分で店やその他の覚えておきたい場所をメモとともに記録しておいて、タグやテキスト情報および地図から検索できるようなもの(Androidから)ってないのかなぁという。
グルメナビ系のサービスだと、サービスによってカバーしてる範囲が限られてたり、そもそも基本的に飲食店しか探せないし、口コミとかどうでもよくて自分が行ったところや気になったところだけをスタックしていきたいというところで。
Google MapのStarはちょっと数が増えたら探す気が起きないし。
「○○が食べたいなぁ」とか今いる場所の周辺に何か候補はあるか、という感じで探したい。Google mapと連携して何かそういうサービスあってもおかしくないと思うんだけど、と思ってました。
ありました。気付けばあまりに基本的で、完全に自分が知らなかっただけ感。…誰か教えてくれれば良かったのに(ぇ

割と最近、今回の話とは全く別の同期でEvernoteを使い始めた(その辺はもしかしたら別の機会に)のですが、「クリックして位置情報を設定」という入力欄があることに気付く。
え、何、Evernoteって位置情報入れられるの?もしかして…と思い、ぐぐると案の定。

http://b2log.posterous.com/evernote-249
http://nanapi.jp/1750/
http://dekiru.impress.co.jp/contents/054/05429.htm

そしてAndroid端末からは、ちゃんと地図から検索したり現在地周辺のノート検索ができるらしい。

http://blog.evernote.com/jp/2011/04/20/2749

というわけで期待していたことはEvernoteで完全に実現可能っぽい。そして実際そういう使い方をしている人もいるぽい。

http://knknkenken.blogspot.com/2011/03/evernote-googlemap.html
http://punksteady.com/2011/04/27/gurunavi-evernote/

Evernoteすげぇ。
TwitterのTLで誰かが行ってる店とかで気になったらEvernoteに記録しよう。フォローに東京方面の人が多いので、覚えておいて、イベントとかで東京行ったときに訪ねるという使い道が。観光も捗りそう。楽しみダワァ( ゚ワ゚)

Captcha plugin導入

12月 12, 2011 in WebSite, 趣味・興味 by ezofurpine

実際には2011年11月27日にやったこと、とその続き。
Captcha技術の含まれるWordPress pluginを導入してみたらXREAの仕様絡みでエラー吐いてちょっと苦労したよという話。
ド素人が理屈分からず試してるだけなので、似たような状況でも真似しない方が良いような気がします。

plugin何かいれよーと思って探したところ、Fast Secure Contact Formというメールフォームのpluginが目についた。
細かく設定できるメールフォームが簡単に設置できるらしい。インストール。
これがCaptchaを使っているというので、そう言えば前々からコメントスパム除けにCaptcha導入したかったんだ、と思い出しSI Captchaというpluginも導入。

Fast Secure Contact Form設定画面でphpがセーフモードで動作しているのでメール送信とファイルのアップロードが上手くいかないかもとの警告。またCaptchaの生成もphpが云々。こちらはphpを使わないにチェックを入れた。
設定後使ってみると、セーフモードの警告にも関わらずちゃんと動作した。
よきかな、と思い、ダッシュボードからプラグインの新規追加をクリックするとダッシュボードの上下それぞれに

Warning: session_start() [function.session-start]: open(/tmp/sess_a(略), O_RDWR) failed: Permission denied (13) in /virtual/(略)/si-contact-form.php on line 1443
Warning: session_start() [function.session-start]: Cannot send session cache limiter – headers already sent (output started at /virtual/(略)/si-contact-form.php:1443) in /virtual/(略)/si-contact-form.php on line 1443

および

Warning: Unknown: open(/tmp/sess_a(略), O_RDWR) failed: Permission denied (13) in Unknown on line 0
Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0

とかエラーログが表示されている(固有の値かもしれないところは適当に略しました)。
なんじゃこりゃ。グーグル先生に聞いてみた。

参考(になったけど直接解決にはならなかった)
http://hudor.net/?p=483
http://faintdusk.com/bftsky/archives/29
http://blog.ipweb.org/archives/54
http://wordpress.server-domain.info/xrea/si_captcha_donot_work.html

色々見た感触としては、

  • 原因はXREAのPHPがセーフモードで動いてること。(CGIとして動作させれば良いものの、今度は権限のほうで引っかかる?)
  • /tmpフォルダを作ってsession.save_pathを指定すれば良いらしい
  • メディアファイルのアップロード画面でも同じエラーログが出るらしい→確かに出た

ということなので、tmpフォルダを置いて、試してみた。

  • php.iniを置く→効果無し
  • .htaccessで→効果無し
  • wordpressのconfig.phpにini_set( ‘session.save_path’ , ‘/virtual/ユーザー名/temp’);を追記

3つめのみ、プラグインの新規追加およびメディアファイルアップロード画面でエラーが出なくなった。

が、解決かと思いきや、今度はそれ以外の全ての画面で同様のエラー発生。ただしメッセージの(/tmp)がこちらで指定したパスに変化している。
tmpフォルダの権限を緩めてみたが駄目。
更にぐぐるも、解決策…というか症例が見当たらず。そもそも上に示したものもFast Secure Contact Formの話ではなくて、これ意外と誰も使ってないプラグインなのかな…目についたもの選んだだけなので人気かどうか検討してないんだけど;

で、色々見ている間に、作ったtmpフォルダの中にエラーメッセージ中にある「sess_a(略)」ファイルがいつの間にか生成していることに気付く(後の試行により、エラーを吐いたときに生成していることを確認)
「もしかしてフォルダまでは辿り着けたけどファイルにアクセスできなかったのでは」と思い、生成されたファイルの権限を緩めてみた。
→解決
全てのページでエラーが出なくなった。

その後更にいくつか条件を検討してみたところ、およそ次のような感触

  • ・config.php内のsession.save_path指定は必要。(デフォルトのパスは少なくともxreaでは使えない)
  • ・↑で指定したフォルダの属性はxx7、中のファイルsess_a(略)はxx6以上の権限が必要。
  • ・他はどうでもいい

しかし「その他」に書き込みや実行の権限与えて大丈夫なの?というのが素人ながらちょっと心配。
せめて場所変えておこうということで、ルートじゃない適当な場所にフォルダ作ってsession.save_pathをそこへ指定してみたところ、同じファイルは生成したんだけど属性が変更できない。
なんで?と思ったら所有者がユーザーじゃなくてapacheになってる。
所有者を変更する方法がよく分からんかったので、ファイルを一旦ローカルにダウンロードして、apache所有のファイルを削除、アップロードし直すことによりユーザー所有の同一ファイルとなり、属性変更で今度こそ解決となりました。

結局理屈はよく分からんままですが、素人としては使えりゃ取り敢えず良いか、ということでここまで。
つかれた…
詳しそうな人に聞いた方が早かったかもしれんと思いつつ、どこまで一般的な問題なのか分からないので悩ましいところ。

今後似たようなことが起きたときのためにメモしておきます。

(12月12日)

案の定再発だよー。メモしておいて良かった(・ワ・)
FastSecureFormとCaptchaプラグインの更新が来ていたので自動更新してみたら類似の症状再発。

Warning: session_start() [function.session-start]: open(/virtual/(略)/sess_(略), O_RDWR) failed: Permission denied (13) in /virtual/(略)/si-contact-form.php on line 1674
Warning: session_start() [function.session-start]: Cannot send session cache limiter – headers already sent (output started at /virtual/(略)/si-contact-form.php:1674) in /virtual/(略)/si-contact-form.php on line 1674

属性変更するんだよな→あれ?適用されてない→そうだった所有者apacheだから変更できないんだった。
ので、一旦DLしてUL…しようとするも、DLできない。Oh…そもそも前にDLできたのが不思議な気もするけど。

さてどうしたものかと試していたら、DLはできないけど削除はできることが判明。

よく分からんけど最終的に、phpをcgiとして動作させる.htaccessをsi-contact-form.phpのところへ置いて、該当のsess_(略)ファイル(所有者apacheで属性変更できない)を削除してダッシュボード表示すると何故か所有者がuserになって再生成していたのでFFFTPで属性変更して解決。.htaccessファイルが効果あったのかは不明。なぜ解決したのかも実際のところはよく分からず。

apacheって何?レベルの者が手を出すべきではないのかもと思いつつ、致命的なところではなさそうなので動いてればいいやという感じです。
理屈分かってる人が見たら失笑ものかもしれん。失笑しつつも優しく仕組みや理屈を教えてくれる方歓迎(ぉ

しかしこれ今後updateのたびに毎回やるのかい…うーん、やっぱちゃんとした解決法を学んだ方が良いような気がする。

(2012年1月8日)

問題そのものの「ちゃんとした解決法」ではないような気もするけど、「所有者をapacheからuserに変更する」手順についてはちゃんとした方法がありました。

WordPress が自動生成するファイルの所有者・パーミッションと、その変更方法

XREAの管理ツールにちゃんとそれ用のがあったとは…orz ぐぐったときには、他の鯖ではそういうの見たんですが、XREAには無いのかしら…としょんぼりしていたのに。
ここから更にリンク先のサポート掲示板によると、apacheで作られちゃったファイルは自動的かつ定期的にuser(707)に変更してくれているらしいんですが、どうもそうは思えないなぁ…

そして、「モジュール版PHPから作成されたファイルは、ユーザー名:apache となります。 これはモジュール版という仕様上、避けられません。 」とのことなので、根本的な解決策はないのかも。まぁ致命的な問題ということはないので良いんですけども。