Categories: Firefox, Flash, Video
b2evolution 1.9.3
April 4th, 2007ここのブログで利用しているb2evolutionというブログツールが
ということなので、アップグレード。
1.9.2のバージョンに更新した時、IE等のブラウザで閲覧した場合は問題なかったのだが、何故かFirefoxで閲覧した場合、ゲストユーザ(一般ユーザ)になって、ここのブログを閲覧すると文字化けして読めなくなっていた。
一応、応急措置として、conf/_locale.phpを
$force_io_charset_if_accepted = 'UTF-8';
と直して、こちらの環境では問題は解決したように見えたのだが、その後も、Firefoxだと文字化けするとのコメントをいくつか頂いていた。
こちらの環境では、FirefoxのPreferenceから、Content→Advancedのダイアログで、Default Character EncodingをUTF-8に設定していた。
これだと、
| HTTP_ACCEPT_CHARSET | UTF-8,* |
|---|
として、リクエストヘッダがサーバ側に送られるようです。
しかし、Firefoxのデフォルトの設定では、
| HTTP_ACCEPT_CHARSET | ISO-8859-1,utf-8;q=0.7,*;q=0.7 |
|---|
となっている。
b2evolutionはクライアントに応じて出力する文字を切替えてくれるらしいのだが、どうやら、UTF-8
とutf-8
の大文字と小文字の違いを処理できずに問題が生じていた模様・・。
とりあえず、conf/_locale.phpは、
$force_io_charset_if_accepted = 'utf-8';
としておき、ケースの違いで問題が起こらないように、
--- inc/MODEL/settings/_locale.funcs.php~ Sat Mar 10 23:15:16 2007
+++ inc/MODEL/settings/_locale.funcs.php Wed Apr 4 21:43:40 2007
@@ -869,7 +869,7 @@
if( ! empty($force_io_charset_if_accepted) )
{ // we want to force a specific charset:
if( ! isset($_SERVER['HTTP_ACCEPT_CHARSET']) // all allowed
- || preg_match( '~\b(\*|'.$force_io_charset_if_accepted.')\b~', $_SERVER['HTTP_ACCEPT_CHARSET'] ) )
+ || preg_match( '~\b(\*|'.$force_io_charset_if_accepted.')\b~i', $_SERVER['HTTP_ACCEPT_CHARSET'] ) )
{
$req_io_charset = $force_io_charset_if_accepted; // pretend that the first one has been requested
}
として見ることにする。
b2evolution 1.9.2
February 8th, 2007このブログを作成しているツール b2evolutionの最新バージョンがリリースされたようなので、今まで使用していた1.8.6のバージョンからアップグレードしてみた。
1.8.7 Tokyoの方は、Super Stableの品質だそうだけど、今回は、1.9.2 Kyotoのバージョンをインストール。
データベースの更新後、ブログにアクセスしてみると、ゲストユーザで閲覧すると、予想通り、日本語の部分が???のようになって正常に表示されていないので、
- conf/_locale.php
$evo_charset = 'utf-8';
$db_config['connection_charset'] = 'utf8';
のように変更。
しかし、なぜかFirefox (2.0.0.1)でアクセスしたら、なぜか、まだ???の症状は直っていない・・
(IE 7、Opera 9、w3m等では問題なかった)。
いろいろやってみたところ、上記、conf/_locale.phpを
$force_io_charset_if_accepted = 'UTF-8';
のように修正してみたら(UTF-8は大文字)、問題は納まった?模様。
No more dlsym(3) hack
January 30th, 2007今まで、FreeBSDネイティブなFirefox等で、linux-flashplugin7を使用する際に適用する必要があった
- http://people.FreeBSD.org/~nork/rtld_dlsym_hack.diff
のpatchが、今回のlinuxpluginwrapperの更新(20051113_7)で不要になった。
つまり、
/usr/local/lib/pluginwrapper/flash7.so: Undefined symbol "_dlsym"
として、ブラウザが落ちてしまう問題は、linuxpluginwrapperの側で対応できるようになったので、以前、
の投稿で書いた/usr/src/libexec/rtld-elf/rtld.cにpatchをあてる手順は不要になりました。
FreeBSD版Firefox2でYouTubeのサウンドを鳴らす2
January 12th, 2007先程、mplayerplug-inを、3.35のバージョンにアップグレードしたところ、先日のGreasemonkeyスクリプトがうまく動作していない。
そういえば、mplayerplug-inにpatchをあててなかったか等と思いながら、念のため、Firefoxのアドレス欄に、about:pluginsと打ち込み、インストールされているプラグインの状況を調べてみると、mplayerplug-inの項目には、
| MIME Type | Description | Suffixes | Enabled |
|---|---|---|---|
| video/x-flv | Flash Video | flv | Yes |
と、Flash Videoが追加されていた。
もしや、patchをあてなくても、行けるのでは?と例のGreasemonkeyスクリプトをちょっと修正して試したところ、大丈夫みたい。ちゃんとYouTubeの動画が音付きで見れる。
ということで、現在、
で配布されているスクリプトを
--- youtubemplayer.user.js.orig Sat Dec 9 12:30:32 2006
+++ youtubemplayer.user.js Fri Jan 12 20:26:23 2007
@@ -11,7 +11,7 @@
var obj = document.createElement("div");
obj.className = "FreeBSD-mplayer";
-obj.innerHTML = '<embed src="' + url + '" type="video/flv" width="425" height="350" autostart="true"></embed>';
+obj.innerHTML = '<embed src="' + url + '" type="video/x-flv" width="425" height="350" autostart="true"></embed>';
var e = document.getElementById('playerDiv');
var p = e.parentNode;
p.insertBefore(obj, e);
のように変更して使わせてもらってます(mplayerplug-inにパッチは不要)。
変更点
誤った情報を書いてました。紛らわしい箇所は、削除します。
FreeBSD版Firefox2でYouTubeのサウンドを鳴らす:メモランダム
December 27th, 2006Link: http://elastic965.80code.com/blog/2006/12/youtube_sound
リンク先で配布されているGreasemonkeyのスクリプトを試してみた。
Flashの画面の部分をmplayerplug-inで再生されるように置き換えているみたい(予め、mplayerplug-inには、パッチを適用する必要あり)。
ブラウザ内で簡易に、音付きのYouTube動画が再生できるようになった。
Eclipse 3.2.1
November 5th, 2006java/eclipseのportが、3.1.2のバージョンから、3.2.1に更新されていたので、アップグレードしてみた。
今回、JAVA_VERSIONの方も、1.4+から1.5+へと変更があった。
したがって、1.5以上のバージョンのJavaが必要になる。
今まで、私は、Javaの方は、1.4のバージョンだけを使用していたけど、この機会に、1.5の方もインストールすることにした。
インストールに使用したportは、java/jdk15の方。ただ、これのblowser plugin
は、現在のところ、www/mozillaのportにしか対応してない様だったので、これは無効とした。
(私は、Firefoxを使っているので)
Firefoxのプラグイン用に、古いバージョンのJavaも残しておくことにする。
Firefox 2.0
November 2nd, 2006昨日、www/firefoxのportが、1.5.0.7のバージョンから、2.0に更新されたようなので、アップグレードしようとしたら、portaudit(1)のdatabaseに脆弱性が登録されていたようで、ソースをfetchできなかった。
DISABLE_VULNERABILITIES=yesとしてまで、インストールはしたくなかったんだけど、何げに、
# portaudit -F
と定時のcronに任せるのでなく、手動で更新したら、ちょうど修正されてたようで、うまくfetchできるようになった。
ちなみに、データベースの日付は、
# portaudit -d Database created: Thu Nov 2 20:10:19 JST 2006
しばらくのビルド作業の後
linux-flashplugin7のインストールPATHが変わっていた
August 3rd, 2006数日前から、Firefoxが、www/linux-flashplugin7のportのplug-inを認識しなくなっていたので、調べてみると、インストールされるPATHが変更された模様。
# cd /usr/X11R6/lib/browser_plugins/# cd /usr/local/lib/browser_plugins/ # ln -sf /usr/local/lib/npapi/linux-flashplugin/flashplayer.xpt . # ln -sf /usr/local/lib/npapi/linux-flashplugin/libflashplayer.so .
とsymlinkを張り直し追記、
--- /etc/libmap.conf~ Sat Apr 8 04:51:47 2006 +++ /etc/libmap.conf Thu Aug 3 18:57:02 2006 @@ -3,7 +3,7 @@ ####################################################### # [ALPHA SUPPORT] Flash7 with Mozilla -[/usr/X11R6/lib/linux-flashplugin7/libflashplayer.so] +[/usr/local/lib/npapi/linux-flashplugin/libflashplayer.so] libpthread.so.0 libpthread.so.2 libdl.so.2 pluginwrapper/flash7.so libz.so.1 libz.so.3
のように/etc/libmap.confを修正したら、認識されるようになった。
- 追記 GNOME 2.16(とGTK+2)のコンポーネントが、
X11BASEから、LOCALBASEに移動したのに伴い、若干修正しました。
また、上記の/etc/libmap.confの設定も、サンプルでインストールされるファイルでは既に修正されているようです。
意図しないFlashの再生をブロック
May 15th, 2006Flash7のプラグインにアップグレードして以来、まだ、それ自体がアルファサポートということもあってか、正直、Flashが原因でFirefoxがよく落ちる。
確かに、Flash6のプラグインを使用していた頃と比べたら、再生できるコンテンツは増えたけど、飛んだページに意図せぬFlash広告なんかが埋め込まれていて、それが元で、よくブラウザが落ちたりする。
どうにかならないものかとは思ってはいたけど、先ほど、portsを更新したら、
というportsが出来てた。
面白そうなので、インストールしてみた。
ページのコンテンツ中、Flashが埋め込まれていると思われる部分が、
のように表示されるようになってる。自動的には再生されない。
この部分にマウスのカーソルをあてると、
のように形が変わり、これをクリックすることで、該当部分のFlashが再生される。
また、右クリックすると、コンテキストメニューがあらわれ、サイトごとにFlashを自動的に再生するかどうか等、細かな設定も可能。
ちょっといいかも? もっとも、FreeBSD上で、Flash Player自体が安定してくれれば、もっといいのだけど…。
Flash7のプラグインにアップグレード
March 29th, 2006ちょっと前から、
の脆弱性の問題で、portauditの警告がうるさかったので、これを機会に、firefoxで使用しているFlashプラグインを、www/linux-flashplugin6のportから、www/linux-flashplugin7のものに移行してみようと思った。
www/linuxpluginwrapperのportの方は、前々から、-DWITHOUT_PLUGINS付きでインストールしてあったから、上記6のPluginの方とは依存関係はなく、単にアンインストール後、7のバージョンの方を新しくインストールし、
# cd /usr/X11R6/lib/browser_plugins # ln -sf /usr/X11R6/lib/linux-flashplugin7/flashplayer.xpt . # ln -sf /usr/X11R6/lib/linux-flashplugin7/libflashplayer.so .
と、Symlinkを張り直しただけ。
※ これらのPATHは変更されています。詳細は、p209の投稿を参照して下さい。でも、そのままインストールしただけじゃ、不十分だったようで、Flashなページを表示させようとすると、
/usr/local/lib/pluginwrapper/flash7.so: Undefined symbol "_dlsym"
とfirefoxが落ちてしまう。ちょっとはまってしまったけど、調べたところ、
に書いてあるように、/usr/src/libexec/rtld-elf/rtld.cにpatchを当てなければならない追記模様。そこで、以下のように適用。
# cd /usr/src # fetch http://people.FreeBSD.org/~nork/rtld_dlsym_hack.diff # patch < rtld_dlsym_hack.diff # cd libexec/rtld-elf # make depend && make obj && make && make install
(後で、確認したけど、linuxpluginwrapperのメッセージにも書いてありましたね…)
- 追記 このpatchをあてる手順は不要になりました。詳細は、p248の投稿を参照して下さい。
以上で、Flashなページも表示できるようになりました(ちなみに、LINUX_BASE_PORTは、この間、Fedora Core Linux 3.0に置き換えている)。
Flash6を使用していた時は、Google Analyticsのグラフィカルなレポートが表示されず困っていたけど、Flash7にアップグレードしたら、ちゃんと表示されるようになったようなので快適。
- 追加情報 2006/04/08
-
あら、
に記載されている
Authorized Operating Systems
に、FreeBSDは含まれていないとのことで、www/linux-flashplugin*のportsが全部削除されてしまったではないか。
- 追加情報 2006/04/27
-
あら、
ということで、元に戻ったみたい。
FreeBSDのportsに復帰した模様。
要は、Macromediaの回答によると、FreeBSDにFlash Playerをインストールすること自体、禁じるつもりはないけども、EULAに記載されているOS以外で使用する場合、Macromediaはそういったケースに関しては、全くサポートしないとの立場のようで。
firefoxの検索ボックスの消し方
February 3rd, 2006先日、Google ツールバーのことをちょっと書いたけど、前に、firefoxにGoogle ツールバー入れると、検索ボックスが二つもついて邪魔じゃない?なんて言われたことがある。
誤解があるようだけど、firefoxは、
${HOME}/.mozilla/firefox/*.default/chrome/
以下にあるファイルを設定することで、柔軟にカスタマイズできます。
例えば、初めからついてる検索ボックスを消したいのなら、普通、上記の場所にインストールされている
- userChrome-example.css
という名前のサンプルファイルを
- userChrome.css
という名前でコピーして、そのコピーしたuserChrome.css内の後ろの方にでも、
#search-container,#searchbar { display:none !important; }
を追加して、firefoxを再起動すれば、検索ボックスは表示されません。
Google ツールバーを使わずにページランク取得
January 31st, 2006FreeBSDでも、firefox用のGoogle ツールバーを使用することが出来る。当然、GoogleのPageRankも簡易にチェックすることができる。
ま、ページランク自体、従来いわれたように、Googleの検索結果の上位に表示するための魔法ではないのだけれども。でも、どのコンテンツがどの程度、評価されてるか、一応の目安となり、それなりに興味深い。
Google ツールバーをインストールせずに、Googleのページランクを知りたい場合は、対象となるURLとともに、そのURLのch値といわれるチェックサムが、Googleに問い合わせする際、必要になる。ch値の算出方法については、しばらく謎とされてきたが、
で、そのアルゴリズムが公開されてる。
それを応用したいろいろなアプリケーション等も開発されて、
なんかは、個人的に面白いと思う。
firefoxからmplayerを起動してmms形式の動画を再生
January 24th, 2006普段、ウェブを閲覧するのに、firefoxを使ってる。www/mplayer-pluginをインストールしてあると、ブラウザの中で、最近、増えてきたWMV形式の動画を再生してくれる。しかし、http形式のプロトコルでは問題ないが、mms形式のプロトコルで配信されているものについては、現在のところハンドルできないみたい。mplayer自体は、mms形式のストリーミングの再生にも対応していているのだが。
firefoxでは対応していないプロトコルのハンドルの仕方が、
に書いてある。これを応用して、mms形式のリンクを踏んだ場合、mplayerを起動して再生するようにしてみた。
まず、
#!/usr/local/bin/perl -w
my @login_sites = (
{
site => '\.some-streaming\.com', # 正規表現
user => 'your_name',
passwd => 'your_password',
},
# 適宜追加
# {
# site => '\.more-streaming\.com',
# user => 'your_name2',
# passwd => 'your_password2',
# },
);
if (defined(@ARGV)) {
my $url = shift @ARGV;
while (defined(my $a = shift @login_sites)) {
if ($url =~ qr($a->{site})) {
$url =~ m#^(mms://)(.*)$#;
$url = $1 . $a->{user} . ":" . $a->{passwd} . "@" . $2;
last;
}
}
exec("/usr/local/bin/mplayer $url");
}
等とラッパーのスクリプトを書いて、${HOME}/bin/mplayer_mms.pl等とおき、実行権限を与えておく。
次に、${HOME}/.mozilla/firefox/*.default/user.jsに、
user_pref("network.protocol-handler.app.mms",
"/home/USER/bin/mplayer_mms.pl");
user_pref("network.protocol-handler.warn-external.mms", false);
等を追加(なければ新規に作成)して、firefoxを起動し直す。
以上で、少なくともfirefox 1.5では、mms://で始まるリンクをクリックすると、mplayerが立ち上がって、再生してくれるようになった。
特に上記のようなラッパースクリプトは必要ではなく、直接、user.js内に、mplayerがあるPATHを指定しても良いのだが、ちょうど見たかった動画がBASIC認証が必要だったため、あえてそうしてみただけです。認証にクッキー等を使っている場合は、駄目(mplayer自体も対応していない)。
eclipse with firefox
December 6th, 2005うっかり、portsのjava/eclipseをWITH_MOZILLA=firefox付きでビルドしたら、Preferencesから、Web Browserの設定画面を開くと、eclipse自体が消えてしまう・・・。
しばらく、悩んでたけど、よく考えたら、埋め込みブラウザじゃないんだから、WITHOUT_MOZILLA=yesとすべきだったか。ビルドし直して、同様の画面を開くと、落ちない。どうやら、正解の模様。Web browserとしてfirefoxを指定しておく。
CSSで作った疑似フレームがスクロールの際、引っかかって邪魔になる件
December 6th, 2005普段、Web上のRSSリーダーとして、
を利用している。ちょっと前まで、
も利用していたんだけど、いつぞや、デザインが刷新されてから、Firefoxで見ると、マウスのホイールボタンで画面をスクロールすることが出来なくなっていて、使いにくかったので、ほとんど利用しなくなった。
CSSで疑似フレームを作ると、引っかかってしまい、スクロールがスムーズに行かなくなるので、好きではない。これはインラインフレームにも言えるけど。
しかし、先程、久しぶりに見てみたら、ちゃんとスクロールできるようになってる。おそらく、先日、firefox 1.5にしたおかげだと思う。firefoxの方の問題であったか。
いずれにしても、未読の記事が沢山ある・・・
