[Gmail][Postfix] GmailのSMTPサーバの認証局証明書の警告
引越先で新しく契約したプロバイダではメールサーバオプションなしなので,自宅サーバのPostfixからのメール送信をGmailのSMTPサーバ(smtp.gmail.com)を使ってすることにしました.
こちらの記事を参考にメール送信できるようになったけれど,ログに
certificate verification failed for smtp.gmail.com: num=20:unable to get local issuer certificate
certificate verification failed for smtp.gmail.com: num=21:unable to verify the first certificate
...
という警告が出ました.
GmailのSMTPサーバがTLSセッション張るときに渡してくる証明書をPostfixが検証できていないということだろうか.
こちらのMLログによると
「しかるべきCA証明書をダウンロードしてPostfixにインストールせよ」とのこと.
こちらのページからroots.zipをダウンロードして,CentOSのCA証明書貯めっぽいところ(/etc/pki/CA)にコピーして
# cp Root\ Download\ Package/Thawte\ Roots/Thawte\ Server\ Roots/ThawteServerCA.cer /etc/pki/CA
/etc/postfix/main.cf に下の一行を追加して(参考:http://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/postfix-jp/postfix-doc/html-jp/TLS_README.html?rev=1.2#client_tls)
smtp_tls_CApath = /etc/pki/CA
その場所を知らせてやると,Postfix再起動後に証明書の警告は無事に消えた.
[Java][JavaScript] env.jsでHTTPのPOSTメソッドが実装されていない?
env.jsはRhinoで利用できるwindowオブジェクトの実装.
とても便利に使わせていただいているのですが,どうもXmlHttpRequestのsend関数でHTTPのPOSTメソッドが実装されていない様子.
なので,POSTの部分だけとりあえず実装追加.
Rhinoでprotoype.js - みずぴー日記で変更された状態のenv.jsに対するdiffの形で
@@ -613,6 +613,11 @@ for (var header in self.headers) connection.addRequestProperty(header, self.headers[header]); + if(self.method == "POST") { + connection.setDoOutput(true); + var ps = new java.io.PrintStream(connection.getOutputStream()); + ps.print(new java.lang.String( data || "" )); + } connection.connect(); // Stick the response headers into responseHeaders
こんな風にしてとりあえず動くようになった.
後でもう少し調べて報告しておこうかな.
ところで,env.jsで`file://`スキームのURLにPUTするとファイル書き込みができるって仕様はちょっと面白かった.
[Ubuntu] Canon BJ S330 のcupsドライバインストールメモ
BJ S300用の3つのrpmをとってきて,
- bjfiltercups-ppd-1.0-0.i386.rpm (rpm.pbone.net から DL)
- bjfiltercups-1.0-0.i386.rpm (rpm.pbone.net から DL)
- bjfilterbjs300-2.1-1.i386.rpm (キヤノンのサイトから DL)
debに変換してインストール
$ fakeroot alien *.rpm $ sudo dpkg --install *.deb
した後,cupsのコンソール https://localhost:631/ の管理メニューで検出されているUSBプリンタに
/usr/share/cups/model/canonbjs300.ppd
のPPDファイルを指定してインストール.
bjfilterで使うもので足りないライブラリがあるようなので,せっせと追加
$ bjfilterbjs300 bjfilterbjs300: error while loading shared libraries: libtiff.so.3: cannot open shared object file: No such file or directory $ cd /usr/lib $ sudo ln -s libtiff.so.4 libtiff.so.3 $ bjfilterbjs300 bjfilterbjs300: error while loading shared libraries: libpng.so.2: cannot open shared object file: No such file or directory $ sudo apt-get install libpng3 $ sudo ln -s libpng.so.3 libpng.so.2
グレースケールの印刷をしたい場合はどうしたらいいんだろう.
参考:
キヤノン:ソフトウエアダウンロード | インクジェットプリンター
http://members.jcom.home.ne.jp/tanitsu/2004-07-27.html
http://search.luky.org/vine-users.7/msg01403.html
サーバがクラッシュ
自宅サーバのpyxisさん(Sizka機)がクラッシュした.
ハードディスクの故障かな.
保冷材をのせていたりはしたけれど,夏場になって結構熱がやばかったので,それが故障の一因かもしれない.
Googleによると、ハードディスクは温度や使用頻度に関係なく故障する - GIGAZINE
今は急遽ノートパソコンにhttps/svnサーバを立て,レポジトリをバックアップから復元してしのぎ中.
他のPCの/etc/hostsを書き換えてレポジトリの場所をだませば,割と不自由はしない様子.
ということでここ数日は どうでもいいWikiと,あまりどうでもよくないTomcat/Active BPELサービスなどが停止したまんまになりそう.
じゃらん to Googleマップ
確か1年以上前にはもうお見かけしていたと思いますがじゃらんWebサービスとGoogle Maps APIでそれっぽいものつくってみた。でじゃらんAPIとGoogle Maps APIをマッシュアップするアプリが紹介されています。
今回はこれに似たようなものをPatchService上で作る手順です。ただしちょっと簡略化(都道府県単位のみ)。
↓は動画へのリンクです(3分32秒)
じゃらん宿表示APIライトの結果をKMLに変換するXSL
XSLのソースは記事末尾に.
変換の要点は
宿表示API-> | ->KML | |
名前空間 | jws | http://earth.google.com/kml/2.1 |
要素 | / | kml |
要素 | Results | Document |
要素 | Hotel | Placemark |
です.名前つきテンプレート(サブルーチンのように使う)はそれぞれ
- lat_and_lng(lt, ln)
- 座標変換して結果を
タグで返す - coordinates(lt, ln)
- 座標変換して結果を
タグで返す - newline
- 改行(<br />)
というものです.座標変換部が冗長なのはご愛嬌.
そしてマッチしなかった残りの要素はすべて無視します:
<xsl:template match="@*|node()"> </xsl:template>続きを読む