Category ‘制作日記’
仮サーバーの環境を本サーバーに近いように弄ってるとdomxmlが無いことに気づいた、結構使ってたのでPHPに標準で付いてる関数かと思ってた、検索してみるとモジュールを追加しなくてはいけないらしい。ダウンロードしてコンパイルみたいな事書いてたので面倒だなと思ってるとMLogの記事を発見、PHPのモジュールもソフトみたいにapt-getでインストールできる様だ。
# rpm -qa|grep php
でインストールされてるアプリからPHPを含むのを見てみる、当然だがそれっぽいのは無い。
# apt-get update
念のため最新版チェック
# apt-get install php-domxml
domxmlをインストール
# service apache2 reload
サーバーの再起動
# rpm -qa|grep php
でインストールされてる事を確認して
# php -r 'var_dump(function_exists("domxml_open_file"));'
domxmlの関数が使えるかチェック
ついでにphpMyAdminがmcryptを使ってるらしく下の方にアラートが出てたので
# apt-get install php-mcrypt
ってしてインストールした。
依存性の関係でlibmcryptも自動でインストールしてくれた。
あと、PEARにMailパッケージが入ってなかったので入れる。
# pear install -a Mail
ついでにアップデートもしとく
# pear upgrade-all
# pear update-channels
2009/01/12 | Tags: DNRH-001, domxml, PHP | 制作日記 | コメントください »
最近放置気味だったDNRH-001をテスト用にサブドメインを使える様にした。
元々ユーザーごとにアクセス出来るようにしてたので
http://192.168.0.5/~myrelease/
※ローカルの話なのでアクセスしても見れませんよ。
でも見れるんだけどルートからの相対パス(「/」で始まるパス)を見れるようにしたい。
まずは、サブドメインというだけあってドメインを指定しないと話にならないのでdns(内部DNS)の設定。
クライアントパソコン(閲覧するパソコン)が1台しか無い場合hosts(C:\WINDOWS\system32\drivers\etc\hosts)に追記するだけでいいんだけどパソコンが複数ありそれぞれのパソコンのhostsを弄るのが面倒なので・・・
「Linux で自宅サーバ」を参考にBIND DNSを設定した。
linux.uda2.net : 192.168.0.5 (テストサーバーDNRH-001)
pcast.uda2.net : 192.168.0.21 (メディアサーバーやNASとして使ってる)
Webminで「BIND DNS」の「Edit Config File」で「named.conf」に
zone "uda2.net" IN {
type master;
file "uda2.net";
allow-update { none; };
};
zone "0.168.192.in-addr.arpa" IN {
type master;
file "0.168.192.in-addr.arpa";
allow-update { none; };
};
を追加し、保存すると「既存の DNS ゾーン」に「uda2.net」が発生してるのでコレを編集、
$TTL 1D
@ IN SOA linux.uda2.net. root.linux.uda2.net. (
2003072501
3H
1H
1W
1D )
IN NS linux.uda2.net.
IN MX 10 linux.uda2.net.
linux IN A 192.168.0.5
uda2.net IN A 192.168.0.5
pcast IN A 192.168.0.21
dns IN CNAME linux
www IN CNAME linux
myrelease IN CNAME linux
smtp IN CNAME linux
pop IN CNAME linux
ftp IN CNAME linux
メールとかftpはいらんけど一応載せておいた。
次は逆引き「192.168.0」 を編集、
$TTL 1D
@ IN SOA linux.uda2.net. root.linux.uda2.net. (
2003072501
3H
1H
1W
1D )
IN NS linux.uda2.net.
IN PTR uda2.net.
IN A 255.255.255.0
5 IN PTR linux.uda2.net.
21 IN PTR pcast.uda2.net.
Apacheの設定は「Vine Linuxで自宅サーバー」を参考に
httpd.conf を編集
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /home/httpd/html
ServerName www.uda2.net
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /home/myrelease/public_html
ServerName myrelease.uda2.net
</VirtualHost>
それから、パソコン(クライアント)のDNS設定を
優先DNS 192.168.0.5
代替DNS 192.168.0.1
に変更したら
http://myrelease.uda2.net/
でテストサーバーに繋がる様になった。
2009/01/11 | Tags: DNRH-001, 内向けDNS | 制作日記 | コメントください »
厳密に守ってる訳じゃないけど、ちょっと気になるW3C。
メインなブラウザをFireFoxにしてからは Web Developer というアドインを使ってたんだけどしまってあるので、呼び出すのが面倒なので、ブックマークレットにしてみた。
これで、ブックマークから簡単にW3Cをチェックできる様になった。
つーか、この記事書くんに調べてたら既にあった。
(まあ、オレの方は別ウインドウ表示なんでちょっと違うけど・・・)
付け方はYahoo!ブックマークのを参考に
2008/12/13 | Tags: W3C, ブックマークレット | 制作日記 | コメントください »
入会のフォームに誰かがいたずらしてる様だ。
以前、掲示板に中国ドメインによる攻撃があったので中国ドメインと攻撃したIPを除外する様にhtaccessを書いていて
myreleaseにも同じ様にしてるので大丈夫だと思ってたんだけど、ダメみたい。
そこで画像認証を考えてみた。
結構、色んな人が作ってくれてるので簡単に設置できる。
http://uda2.com/kcaptcha/form_example.php
もう少し画像認証について調べてみたらどうも一般的なユーザーには好まれない様だ。
どうしようかと、思ってお問い合わせのあった人の情報を削除するためにDBを覗くと似たメールアドレスで使ってる人を発見。
攻撃されてるのではなく単に間違えて入力した様だ・・・。
2008/12/13 | Tags: PHP, いたずら, 画像認証 | 制作日記 | コメントください »
仕事で携帯のトップページをFlashにしたいという話があり(オレが作る訳じゃないが)、気になったので調べる事にした。
アナライザーを探したが無さそうだ、そもそも携帯電話のアクセスログは取りづらい。
GoodleAnalycsが非対応なのはもちろん、携帯でもアクセス数やキャリアや機種が分かる程度しか分からない。
運営者ならそれでもいいかもしれないが、開発者としてはそれでは不足している。
今、使われてる携帯でFlash Liteのバージョンは何にするのがいいのかはFlash Lite1.1という話になっているが、本来は微妙な話だ
サイトによってはユーザーが違うし、インターネット白書などで調べるという事も考えられるが、インターネット白書は過去一年の情報を纏めて発行するので最大2年のタイムラグが発生する。
普通の社会では2年ぐらい気にならないかもしれないが、WEB(特に携帯)の世界だと2年は長い。
そこで、生ログを調べる事にした。
以前もやった事があるが生ログからエディタやエクセルを駆使して目的のデータを抽出するのは結構な手間と時間がかかる。
一回だけならまだしも、何かの度に調べるには厳しいのでスクリプトで処理する事にした。
チカッパは生ログをGZの圧縮データで落とせる。
そこでGZの圧縮データをメモリ上で展開し、Bot(検索エンジン等)を除外し、更に携帯の呼称とキャリアとフルブラウザかのデータにし保存する。
保存したデータを読み込み、インプレスR&Dのケータイ端末プロファイルデータ(無償版)と組み合わせた配列をFlash製グラフ作成「amcharts」のクラスを使ってXMLを書き出したファイルをamchartsに読ませて円グラフにしてみた。
http://uda2.com/logviewer/index.php?view=47
データは2008年11月30日から2008年12月6日までの一週間のログを纏めてみた。
一番下のは「ケータイ端末プロファイルデータ(無償版)」に無かったので弾いた機種だけどY901i YH01はパソコンから「モバイル版Yahoo!カテゴリ」を見る為にYahoo!が偽装したユーザーエージェント。
なんだかんんだでコレを作るのにも丸一日かかってしまった。
2008/12/11 | Tags: amcharts, FlashLite, GZ, ケータイ, 生ログ | 制作日記 | コメントください »
深夜にMyReleaseのリニューアルをしました。
変更箇所に誰も気づかないかもしれないけど、今まで色んな所から情報を取ってきてamazonのAPIとすり合わせしてたんだけどCD・DVD・GAMEをamazonのAPIまかせにした、内部で持っている情報が増えたので今後の展開が色々できる様になった。
(コミックはamazonよりも早く情報をそろえたいので今まで通り色んな所から集めてます。)
以前、コミックのBLが判別できないので困ってたのを出版社でなんとかごまかしたんだけど、DVDにも微妙なのがあるのに気づいてしまい、仕方ないので特に酷いメーカーだけアダルトにした。
あと、CD・DVD・GAMEも商品詳細ページを用意することにし、本当に人気のあるWEBショップはどこか調べることにした。
ブックマークしてる人が多いって事は人気があるだろうとyahooで検索した時に出てくる「ブックマーク:?人が登録」ってやつで人気を調べることにした。
1位はamazon
2位は楽天
3位はビックカメラ
4位はHMV
5位は紀伊国屋
6位はソフマップ
7位はBK1
8位はJbook
9位はタワーレコード
10位はツタヤ
後はセブンアンドワイ・livedoorブックスe-honと続く
楽天とかlivedoorとか本屋自体にはリンクしてない所があるので正確なランキングではないけどそんなに外してないかと思う。
オレの感覚だと2位ぐらいかと思ってたセブンアンドワイが意外とユーザー少ないのがびっくりだ。みんなの書店とか面白そうなコンテンツがあるのに。
amazonと楽天は別格で全体的にサービス(送料や価格や使いやすさ)がいいから上位というよりは実店舗で有名な安心感のあるショップがWEBでも人気があるという感じの結果になった。
あまりに現状と違いすぎて在庫を調べるスクリプトの改訂が大変なので、選ぶ事をやめて可能な限り載せる事にした。
2008/12/05 | Tags: MyRelease, WEBSHOP | 制作日記 | コメントください »
家にあるPSPはあまり月に1回ぐらいしか電源を入れないので毎回日付を聞かれる。
PSPをどうにか有効に使おうとテレビ番組をMediaCoderでPSP用に変換して見たりした。キレイに見れるんだけど変換に時間がかかるので実用的では無い。(DLNAクライアントが搭載されたらエンコードしなくてもいいのに・・・)
本題にはいるがPSPにはブラウザが内蔵されている。昔MyReleaseを見たときに真っ白になってたんだけど半年以上前にはちゃんと表示されてたので「気のせい」という事でスルーしてたんだけど先日見直してみるとまだ、真っ白になってる。
何が起きたのかとソースを削りながら調べてみたら、コミュニティに付けたルビ関連のCSSハックが原因という事が分かった。
「CSSハックはできるだけ使わない方がいい」と言われてるのが本当に問題が起こるとは・・・
javascriptでルビ関連の記述をPSPとパソコンで振り分けると解決した。
for 0.02%のPSPでMyReleaseを見てる人へ
2008/12/03 | Tags: PSP | 制作日記 | コメントください »
いつの間にかRSS 1.0の表示がおかしくなった。
FireFoxで見たらタイトルだけになってしまう。
RSS 2.0とATOMの方は問題が無い。
2・3時間ほどRSSのクラスを弄って仕様に厳しくしていったたけど直らない。
よく考えたら、作ってから触ってないのに表示できなくなった、変わったのは月だった。
11月から12月になりまだASINが分からないデータが含まれていて、ASINが分からないデータはamazonで検索するようにしてあるんだけど、検索するときはURLが長くなるので文字数オーバーになった様だ。
検索せずにamazonにリンクするようにしたら直った。
2008/12/03 | Tags: RSS | 制作日記 | コメントください »
最新のdocomoの携帯にiコンシェルという機能が付いた。
「ひつじのしつじ」でおなじみのアレだ。
元々、パソコンや携帯でスケジュール管理をするのが苦手(書くほどの予定もない・・・)のなのでGoogle カレンダーとかも牛のリマインダーもスルーしてたんだけど、iコンシェルは楽しそう。
そこで、「MyRelease」のコミックの発売情報を載せてみるかな と作ろうiモードコンテンツ:スケジューラデータフォーマット | サービス・機能 | NTTドコモを調べてみたら
誤記発見、「CHARASET=SHIFT_JIS;ENCODING=QUOTED-PRINTABLE:」とか書いてる「CHARASET」でなく「CHARSET」ですよね?
ずずっと見ていくと「緯度・経度」とかもひっぱってこれるみたい。
集合場所までナビまでしてくれたりするんかな?
iコンシェルのを作る前にGoogleカレンダーの事もよく知らないので調べてみると
iCal(iCalender)とかいう書式らしい、元々はvCalenderとかいうvCard(電子名刺)の親戚みたいなものの様だ。
サイトによって書式にぶれがあるのが気になるがRSSと同じで読むソフトがなんとかしてくれるという事だろう。(サイトによってはそれぞれのカレンダー用に用意してる所もあった)
調べてる内にイベントソーシャルサイトeventcastを見つけた。Google Calendar、iCal、c2talk、カレンダぴ、auケータイとのやりとりができるらしい。
他のケータイにも対応してるみたいだけどよくわからない。
とりあえず、単品のイベントならYahooカレンダーにも登録できる事が分かった。
(リマインダ ボタンの作成)
ヘッダを header(‘Content-Type: text/calendar; charset=utf-8’);
で拡張子は.icsだそうだ
ポチポチやってると日付に関する指定がやたら多く微妙な言い回しなので調べたが
iCalendarの仕様がよくわからん、調べたが結局よくわからん様だこれも受け取るソフトがなんとかしてくれると信じよう。
http://my-release.info/1/COMIC.ics
Googleカレンダーに登録はこれでいけるみたい。
一回間違えたデータを登録すると登録し直してもすぐに反映されない。
頻繁にicsファイルを見ないようにしてるのかもしれない。
そんで本命のiコンシェルやけど Googleカレンダーよりは設定項目が少ないけど日本語はQUOTED-PRINTABLEとかいうのに変換しなきゃいけないらしく、「imap_8bit」か「quoted_printable_encode」を使うと出来るんみたいだけど。xreaではいけるけどチカッパはダメだった。
ネットで替わりの関数を探し2コ見つけたので試したけら1コはコンパクトだけど正しい答えが返って来なかったので長い方(Quoted-Printableのエンコード (ふえうさぎの記憶墓地))を拝借することにした。
ちなみにiコンシェルの場合は
ヘッダを header(‘Content-type: text/x-vcalendar; charset=Shift_JIS’);
で拡張子は.vcs
そんなこんなで丸一日かけて完成
http://my-release.info/1/COMIC.vcs
って、オレ最新のdocomo持ってないから確認できない・・・
2008/12/02 | Tags: Googleカレンダー, iCalendar, iコンシェル, PHP | 制作日記 | 1件のコメント »
RSSにちょこっと対応しようかなと思ってみた。
きっかけはこの記事
ユニークなものからシンプルなものまで、RSSのアイコン集: Part 5
なんかイイ感じのアイコンが並んでるので使いたいなと思ってやってみた。
とはいえ、情報はあるので整形するだけでRSSは作れてしまうんだけど、あえてRSS 1.0とRSS 2.0とATOMに対応させようとライブラリを探した。
超簡単って事で「FeedWriter.php」ってのを使うことにした。
PHPでATOM、RSS1/2フォーマットのフィードが超簡単に吐き出せる「FeedWriter.php」
設置は1時間もかからず済んだが全然動かない。
色々、いじっててPHP5の関数(privateとか)って事に気づいた、チカッパはPHP4なので動かない。って事でPHP用4に改造、しかもソース見たら重複するノード名はitem以外使えない様になってる(XMLとしては片手落ちだけどRSSでは問題無いっぽい)それならややこしいことせずに連想配列を使ってクラスを1つに纏めて、文字コードを変更する機能とかなんやら付け加えて、完成したら丸一日かかってしまった。予定では2時間ほどで出来る予定やったのに・・・
□RSS 1.0:http://my-release.info/1/COMIC.rdf
□RSS 2.0:http://my-release.info/1/COMIC.rss
□ATOM:http://my-release.info/1/COMIC.xml
RSSの種類は拡張子を変えると切り替わる様にした。
正直そこまでして誰が喜ぶのか分からないが・・・
以前からRSS対応は視野にあったんだけどMyReleaseで扱ってる商品が「11月下旬」みたいなのがあって、どうしても月単位でないと情報が欠けてしまうので「RSSやメール配信に向いてない」と考え付けなかったんです。
そういう訳で使う人が殆どいないのでこっそり仕様で設置する予定です。
2008/11/23 | Tags: PHP, RSS | 制作日記 | コメントください »