ブログシステムとか、大量のファイルをFTPでサーバーにアップするとき、途中でとまってしまうことが結構あって困っています。
一度とまってしまうと、そのあと少数のファイルをアップしただけでも止まってしまって、いつまでたってもアップが終わらない。
いつまでもこれじゃ生産性悪いことこのうえないので、ちょっと調べてみました。
結論からいうと、
・サーバー側のFTPサービスがproftod
・クライアント側のFTPソフトがFFFTP、Fetch
という組み合わせでおこるようです。
proftod側の設定をいじるというTIPSもググると出てきましたが、僕の場合は変化なしでした。
ちなみにそのTIPSを転載しておくと、
・standaloneモードのとき
/etc/proftpd.confのMaxInstancesの数値を増やす (300くらいにしたら動いたらしい)
・inetdモードのとき
/etc/xinetd.confのinstancesの数値を増やす (200くらいにしたら動いたらしい)
ということです。
でも、これはDos攻撃のときにあやうい気がする・・。
結局僕は、FTPソフトをCyberDuck(OSX用)にしたら、とまることなく全部アップできました。
Fetch、金払ったのに今ひとつ使えないな〜。
以前、Transmitってやつを試用版で使ったらよさげだったので、それにしようかな。
CyberDuckも今ひとつ重かったりするし。
2008年10月16日木曜日
proftpdに大量のファイルをアップすると止まってしまう
2008年5月15日木曜日
TweenerのuseFramesが効かない
AS3になってから、トゥイーンにはもっぱらTweenerを使ってます。
前はTweenクラスとか使っていたんだけど、便利で一度使ったら手放せません。
そんなTweenerですが、ひとつハマったところがあったので情報シェア。
「useFrames」というプロパティがあって、これはTweenerさせる時間を秒で設定するかフレーム数で設定するか決められるBoolean値です。
Tweener.addTween(mc, {time:10, useFrames:true, y:100, transition:"easeOutQuint"});
とかすると、「useFrames:true」になってるので「time:10」を10フレームとしてとらえます。
つまり、10フレームかけてyを100にトゥイーンするわけです。
しかし、これが何回試してもうまくいかない。
useFrames:trueにしても、秒数になっちゃうのです。フレーム数で計算してくれない。
「Tweener useFrames」で日本語でググっても有益な情報は見つからずで、しょうがないので英語でもググるとこんなページが・・。
[Tweener] useFrames
> I just switched to Tweener for all my tweening stuff and I love it.
> But I have a problem with useFrames in den AS3 Version.
> Although I set useFrames to true, the time parameter doesn't use a
> frame amount-
> it's still in seconds. I would like to use a number in frames.
> Is it a known bug or why doesn't it work ?
It's a known bug; rather, it's something that has been known for a long
time but that managed to slip uncorrected.
Coincidentally, it's one of the little things I'm correcting for the
next version, so expect a fix in a few days.
Zeh
簡単に訳すと、
>Tweenerを喜んで使ってるけど、AS3バージョンだとuseFrames効かないんだよね。
>これって既知のバグ? なんで動かないの?
これは既知のバグです。っていうかずっと前からわかってるんだけど、直しそびれちゃってるんだよね。
2、3日で直せるから次のバージョン待っててね。
Zeh(Tweenerの開発者さん)
ということらしい。
早く次のバージョン・・。
だけど、Google CodeのTodoみても、
properly support .useFrames!
つまり「ちゃんとやるところ useFrames!」ってまだ書いてるし、直ってないでしょ。。
まあ、秒数でやりますよ、しばらく。
(2008.08.12追記 最近のリビジョンでは直ってるようです。)
2008年4月11日金曜日
HELOSCAN ─bloggerにTrackbackを実装する
Trackbackなんてあまり使わないから気がつかなかったけど、bloggerってTrackback機能がないんだ!
びっくり。
バックリンクとかいうのがあるけど、これではこちらから向こうにリンクはってますよ、とは伝えられないので、不便。
ないと思うと欲しくなるのが人の常でありまして、例によって調べてみました。
海外のサービスではありますが、HELOSCANというサイトのサービスを利用すると、bloggerでもトラックバックが使えるようです。
クリボウの Blogger 入門というページがよくまとまっているので、参考にしてみました。
ただ、今現在はHELOSCANがちょっとバージョンアップしているみたいで、若干説明と違うところがあります。
クリボウさんの説明では、サイトの画面に従っていくと、trackback用のコードが表示されてそれをbloggerのテンプレートに組み込んでいくという流れですが、現在では、
1.bloggerの「レイアウト」-「 HTML の編集」-「テンプレートをすべてダウンロード」でbloggerのテンプレートをダウンロード。
2.それをHELOSCANにアップロード。
3.HELOSCANが、トラックバック機能を埋め込んだテンプレートを勝手に作ってくれるので、それをまたダウンロード。
4.bloggerの「レイアウト」-「 HTML の編集」の「〜テンプレートをアップロードします」のところで、HELOSCANがつくってくれたテンプレートをアップロード。
で完了です。
すばらしい。ほんと手間いらずです。
これでtrackbackを受けれるようになったのですが、trackbackを送信するにはちょっと手数がいります。
HELOSCANの画面から、いちいち手作業で送信しなきゃいけないのです。
方法は、The Okano Mailさんに詳しくのってますので、そちらをご参照ください。
ブラウザで文字エンコーディングをいちいちUTF-8にするとかかなり面倒ですが、まあできないよりはいいでしょう。
っていうか、なんで最初っからtrackbackできないの? blogger。
2008年3月29日土曜日
postfixのインストール(fedoracore3)
fedoracore3のpostfixは、mysqlに対応してないのでsrpm から mysql 対応の Postfix をつくる。
(参考:ずんWiki - Postfix/Postfixをmysql対応にする)
http://ftp.riken.jp/Linux/fedora/core/3/SRPMS/
の中で一番新しいpostfix、postfix-2.1.5-2.2.src.rpmをダウンロード&インストール。
rpm -ivh http://ftp.riken.jp/Linux/fedora/core/3/SRPMS/postfix-2.1.5-2.2.src.rpm
SPECS/postfix.specを修正。
また、postfixはバーチャルでMaildirにすると、Quotaが使えない。
patchをあてることで使えるようになる。
Quotaパッチ適用済みPostfix RPMの作成)
postfixをアンインストールしてから、あとは参考URLのとおりインストール。
rpmsavedのconfを元に戻して終了。
chkconfigで自動起動を設定する。
yumの自動アップデートからも除外しておく。
冷凍牛乳箱 - Linux関連 Archive
Postfix、Postfixadmin、Dovecotのメールサーバー構築
●Quota
postfixadminのconfig.inc.phpの中を
$CONF['quota'] = 'YES';
にする。
●postfixのconfをmysql対応に
Server(Debian-Postfix-MySQL-Courier-Postfixadmin)
さくらの専用サーバ環境のメール設定
●dovecot
fedora core3の場合、rpmパッケージが0.9までしかない。
1.0系を入れたいので、ソースからコンパイル。
configureのとき、--with-mysqlでmysql対応にする。
chakiの部屋: Postfix + Dovecot + MySQLで認証
yumの自動アップデートからも除外しておく。
冷凍牛乳箱 - Linux関連 Archive
mysql認証のために、/usr/local/etc/dovecot-sql.confを作成。
どこにもサンプルがみつからなかったので、自己流で作成。
/usr/local/etc/dovecot.confのuserdb、passdbまわりにdovecot-sql.confへのパスを書く。
dovecot.conf内のhomeディレクトリへのパスは
mail_location = maildir:/home/virtual/mail/%u/Maildir
と最後に「Maildir」がつくのが通常だが、
postfixadminの場合、「Maildir」フォルダを生成しないので、
mail_location = maildir:/home/virtual/mail/%u
とする。
●認証
postfixadminのデフォルト、MD5Cryptとする
dovecot-sql.conf内では、
default_pass_scheme = MD5-CRYPT
と記述。
postfixadminのアドレス編集画面で、「名前」を他ドメインと同じものにしてしまうと、
(taro@foo.jpで「taro」とtaro@bar.jpで「taro」)
クライアントの認証でうまくいかないときがある。
「taro / foo」「taro / bar」などと区別するとよい。
.htaccessのerrorドキュメント設定が認識されない
バーチャルドメインの場合、.htaccessにerrorドキュメントの設定を書いても、正しく表示されない。
どうも/error/ディレクトリをちゃんと認識してないみたい。
httpd.conf内の
Alias /error/ "/var/www/error/"
が、
「URLに対する仮想ディレクトリの指定を行います。
上記の「/error/」の設定の例では、ブラウザから「http://www.example.com/error/」というURLにアクセスがあった際、ドキュメントルートで指定されたディレクトリではなく、「/var/www/error」ディレクトリ内のコンテンツを表示させることができます。
」
という動作をしているみたい。
なので、この1行をコメントアウトして、httpdをrestart。
ちゃんと表示された。
Apacheの基本設定 - Webサイトを創ろう!
nucleusでif文を使ってブログごとに表示をかえる
nucleusで複数のブログを運営しているとき、同じスキンでブログごとにタイトル画像だけ変えたい、なんてときがあります。
どうもスキンでif文を使えばできる模様です。
ただ、if文の書き方がよくわからなくてハマリました。
正解を先に書いちゃうと、
<%if(blogsetting,bnumber,2)%>ということになります。
ブログIDが2のときの処理
<%elseif(blogsetting,bnumber,4)%>
ブログIDが4のときの処理
<%endif%>
これのよくわからなかったのが、ifの引数の書き方。
ほかの言語だと
if(bnumber==2){とか演算子使って書くことが多いと思うのですが、nucleusの場合、カンマで区切って書く模様。
上の例の場合、blogsetting変数のbnumberが2、とかそんな感じです。
あと、もうひとつわかりにくいのが、blogsetting変数のヘルプを見ると、ブログIDは「id」という名前になってるので、
<%if(blogsetting,id,2)%>と書いたんだけど、これだと動かない。
ここは、idは、nucleus_blogテーブルのbnumberというカラムに格納されていて、このカラム名のbnumberで、
<%if(blogsetting,bnumber,2)%>としてあげないとダメ。
これ、ヘルプに書いてないじゃんよ!
まあ、解決してよかったけど。
あっ、ちなみにelseifはnucleusのバージョン3.3以降じゃないと使えないらしいです。