« 2006年12月 | メイン | 2007年02月 »

2007年01月 アーカイブ

2007年01月04日

久々に irb

windows のコンソールで使う。

まず、

irb

と打つと ruby コマンドが打てるようになる。

↓たとえば、こんな感じに使う。

irb(main):025:0> require 'digest/sha1'
=> true
irb(main):026:0> Digest::SHA1.hexdigest("test")
=> "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3"
irb(main):027:0>

2007年01月09日

[WEB SECURITY] Universal XSS with PDF files: highly dangerous

■[security]PDFファイルでXSSが可能!危険度高し

[WEB SECURITY] Universal XSS with PDF files: highly dangerous


WebサイトにPDFファイルが置いてある場合、下記のようにすることでスクリプトが実行できてしまうという問題です。

http://path/to/pdf/file.pdf#whatever_name_you_want=javascript:your_code_here

サーバー側の対処としては、標準の「application/pdf」ではなく、「application/octet-stream」で開くようにすればブラウザ内でPDFファイルを開かず、外部アプリケーションとして開くことになるので回避できる様子。ただし、PDFファイルをブラウザ外で開くことになるので、PDFを主なコンテンツとしているようなWebサイトでは使い勝手が変わってしまう。設定変更を実施する際には顧客の理解が必要でしょうか。

設定はbunさんの「"週"記(2007-01-04)」が参考になります。(下記は引用)

↓Apacheの設定

<Files "*.pdf">
Header set Content-Disposition: attachment
ForceType application/octet-stream
</Files>

ユーザー側の対処としては、Acrobat Readerを Ver.8.0.0以降にするとよいようです。アップデートが必須です。


参考:
http://www.itmedia.co.jp/enterprise/articles/0609/20/news022.html
http://d.hatena.ne.jp/sen-u/20070104/p1
http://mikeneko.creator.club.ne.jp/~lab/web/htaccess/

mysql dump

http://dev.mysql.com/doc/refman/4.1/ja/mysqldump.html

shell> mysqldump [OPTIONS] database [tables]
か mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
か mysqldump [OPTIONS] --all-databases [OPTIONS]

html map

久々にhtml 書いたので 記録してみる。

http://www.tohoho-web.com/html/map.htm
http://www.tagindex.com/html_tag/img/img_map.html

--------------------------------------------------------------
<img src="image/map.gif" alt="マップサンプル" usemap="#maptest">

<map name="maptest">
<area shape="rect" coords="22,11,122,62" href="map1.html" alt="リンク1">
<area shape="circle" coords="184,86,30" href="map2.html" alt="リンク2">
<area shape="poly" coords="87,78,30,110,81,139,69,113" href="map3.html" alt="リンク3">
</map>
--------------------------------------------------------------

map2.gif

html &xxx;

久々にhtml 触ったのでメモしてみる。

http://www.tohoho-web.com/html/char.htm

記述表示説明
&lt;<右大不等号。
&gt;>左大不等号。
&amp;&アンドマーク。アンパサンド。
&quot;"ダブルクォート。引用符。
&nbsp;
空白文字。

2007年01月10日

ムーバブルタイプ タグの入れ子

ムーバブルタイプのタグをいじっている時に気づいた。

「タグの入れ子が出来ない!」

タグの入れ子が出来るプラグインを発見。

MTTagInvoke
上記URLからダウンロードしたファイルを展開して、mt/plugins の中にアップロードしてください。


使用例:

<ul>
<MTTagInvoke tag_name="MTEntries">
  <MTTagInvokeAttribute name="category"><$MTEntryCategory$></MTTagInvokeAttribute>
  <MTTagInvokeAttribute name="lastn">5</MTTagInvokeAttribute>
  <MTTagInvokeContent>
    <li><a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></li>
  </MTTagInvokeContent>
</MTTagInvoke>
</ul>

青い字の部分では、MTTagInvokeプラグインをMTEntriesコンテナタグに適用することを意味しています。 赤い字の部分では、MTEntriesコンテナタグのcategory属性に<$MTEntryCategory$>の指定と、lastn属性に最新エントリ5件分を指定しています。 緑の字の部分では、MTTagInvokeプラグインを適用したことで、<MTEntries>が<MTTagInvokeContent>に置き換わったと思ってください。

参考:
http://bizcaz.com/archives/2006/08/12-171526.php
○MTTagInvoke
http://www.nonplus.net/software/mt/MTTagInvoke.htm

おまけ:
ムーバブルタイプ3.2 テンプレート・タグ リファレンス
ムーバブルタイプ3.3 テンプレート・タグ リファレンス

2007年01月11日

安心感を与えるフォームページ

「ユーザが不安に思うタイミングに、明示的に安心要素を配置する」

これが大切らしい。

http://www.bebit.co.jp/memo/archives/2007/01/post_51.html

2007年01月12日

エントリでMovableTypeのタグを使用する

こ、これは便利。

http://bizcaz.com/archives/2006/05/14-142231.php


○使い方

1.EvalTemplate.pl をダウンロードする。
 ※各自の環境に合った文字コードで保存するようにしてください。僕は Shift_JIS で保存しました。

2.EvalTemplate.pl をアップロード。
 アップロード先は、いつものmt/plugins/ の中にアップロードします。

3.テンプレート修正
対象とするテンプレートは、メインページ、個別アーカイブ、カテゴリアーカイブと、日付アーカイブの各テンプレートです。テンプレート内の、エントリ本文(<$MTEntryBody$>)、エントリ追記(<$MTEntryMore$>)を以下のように修正します。

修正前
<div class="entry-body"><$MTEntryBody$></div>

修正後
<div class="entry-body"><$MTEntryBody eval="1"$></div>

青い字に部分を追加します。同様に、エントリ追記(<$MTEntryMore$>)にも追加します。

修正したら、いつもの保存して再構築します。

以上で、エントリ内でもMovableType(ムーバブルタイプ)のタグを使用できるようになりました。


注意事項
原理的にはグローバルフィルタが有効にできる場所であれば、どこでも、どんなテンプレートタグでも使えます。
強力な反面、悪用されると危険です。間違ってコメントやトラックバックで有効にしないよう、十分に注意を払ってください。
エントリ本文(<$MTEntryBody$>)、エントリ追記(<$MTEntryMore$>)に限定した方がいいと思います。

2007年01月15日

読書


4822281655.09._SS500_SCLZZZZZZZ_V1056615796_.jpg


4822281019.09._SS500_SCLZZZZZZZ_V1056615793_.jpg

本日は1日読書。

去年Yuumi先生から色々と教わっていて分かったけど、
基礎が足りないのだ!

本年は基礎を固めるのだ!

コンピュータは楽しい(^^

○写真左
読破
(全体的に分かりやすく書いてある。2章は科学の授業みたい。9章~11章のネットワーク系がすごく分かりやすかった)

○写真右 去年読んだのでパラパラ復習

MobableType タイトルをトリミング(短く)して表示するプラグイン

最近はムーバブルタイプ一色。
1月にひと段落して、次の開発へ進む予定。

ムーバブルタイプを使っていると、
「これできるかなー」
と思うことは、ほとんどプラグインがある(^^

プラグインを開発した人偉い!

今回は
「エントリのタイトルって短く表示できないかなー」
と言う問いに対して、
「MobableType タイトルをトリミング(短く)して表示するプラグイン」
があった。

○使い方

1.ファイルの作成
 mt-trimj2.pl を作成する。(文字コードはUTF8になっている)
2.ファイルのアップロード
 ファイルをプラグインフォルダ( /plugins )へアップロードする
3.使う
 例) <$MTEntryTitle$> → <$MTEntryTitle trimj2_to="46"$>


参考:
http://home.kanto-gakuin.ac.jp/~ito/mt/archives/2005/09/post_34.html

2007年01月16日

Plaggerを使ってみる

・・・インストールに苦労した...。

Plaggerのインストールは簡単だけど、Perlモジュールのインストールが面倒だった。

とりあえず、Plaしてみたのは

・マイミクの日記をGmailへ送る。
・Bloglinesに登録されているフィードをGmailへ送る。


とりあえず、自宅のWindowsマシンにインストールできたので、
次は、Linuxマシンにインストールして、cronなどを利用して色々やりたい。


○Plaggerの概要
http://www.atmarkit.co.jp/fnetwork/rensai/5minplagger/01.html
○Plaggerのインストール
http://blog.livedoor.jp/hakin/archives/50551036.html
http://blog.livedoor.jp/hakin/archives/50690272.html
○Plagger
http://plagger.org/trac/wiki/WikiStartJa

PHPでCSSを生成することによるテクニックが紹介されています

この考え方は良いなー。

[ PHPでCSSを生成することで、動的なCSSを作ることが可能にする ]
ってことですね。

http://www.phppro.jp/news/277

2007年01月17日

Joel on Sofeware

4274066304.01._AA240_SCLZZZZZZZ_.jpg

以前、話題になって勢いで買って、

「あ、そういえば読んでなかったな」と思い、
2時間くらいでパラパラ斜め読みした。

ソフトウエア開発のマネジメントについて、
ジョエルさんの技術が書かれた本。

1章~45章まであって、細かく分かれている。
どこから読んでも大丈夫。

文章が軽快。おもしろいので良く笑う。
エピソードがたくさん載ってる。

プログラマが読んで、マネジャの気持ちになってみるも良し。
プロジェクト開発のマネジメントに興味があると言う方は、読んでみてはいかが?

subversion merge

subversion で merge を行ったのでメモ。

○ソースの管理状況

Local側
|-trunk ←本番用
|-branches/feature_route_tracking ←通常開発用
|-tags/ver1.00

SVN側
|-trunk
|-branches/feature_route_tracking
|-tags/ver1.00


○手順
1.開発したものをコミット
Local
|-branches/feature_route_tracking
で開発した物を
SVN
|-branches/feature_route_tracking
にコミット。

2.マージ
Local
|-trunk

SVN
|-branches/feature_route_tracking
との差分をマージする。

3.SVN trunkにコミット
Local
|-trunk

SVN
|-trunk
にコミット。

これで最新がSVNのtrunkに入る。

4.場合に応じて tagsに記録する
Local
|-trunk
から
SVN
|-tags/ver1.01
とかにして記録。

※このやり方が正しいかどうかは分かりませんので、ご注意を。個人的メモです。

参考:
http://subversion.bluegate.org/doc/ch04s03.html#svn.branchmerge.copychanges.keyconcept

postgres dump

○postgres dump の方法

1.SSH で サーバーにログイン

2.ファイルの用意(適切な管理権限のあるフォルダ内で行いましょう)
例: /home/postgres/backup/foo.bak

3.ファイルのパーミッションを777に変更。

4.su - postgres

5.pg_dump [db_name] > /home/postgres/backup/foo.bak

6.ファイルのパーミッションを400に変更などして適切な権限管理を行う。

Firebug 便利

Firefoxのアドオン「Firebug」がめっちゃ便利。
ゴキブリみたいなロゴが嫌ですが、蛍らしいです。


○Firebug
http://www.getfirebug.com/

2007年01月18日

windows に ruby をインストール

windows にインストールする場合、One-Click Ruby Installer が楽です。

exeファイルをダブルクリックするだけ。環境変数の設定までやってくれます。

○RubyForge
http://rubyforge.org/frs/?group_id=167&release_id=6672

RubyGemsマニュアル

gem_server.jpg

ローカルマシンで見ることが出来る。

$ gem_server

http://127.0.0.1:8808/

Ruby on Rails マニュアル

api_ruby.jpg

http://api.rubyonrails.org/

2007年01月19日

RailsCronプラグイン

h氏にRails で cron が使えるプラグイン教えていただいたのでメモ。

http://rails.office.drecom.jp/takiuchi/archive/55

rails CSV形式のファイル処理プラグイン

rails CSV形式のファイル処理プラグイン

http://www.gesource.jp/programming/ruby/database/fastercsv.html

Rails1.2 目玉機能>ActiveResource

Ruby on Rails 1.2 が出た。

○ruby on rails
http://www.rubyonrails.org/

○ActiveResourceが目玉機能らしい>rails1.2
http://d.hatena.ne.jp/keyword/ActiveResource
http://cesare.seesaa.net/article/19567455.html

○既存の機能ももちろん進化
http://subtech.g.hatena.ne.jp/secondlife/20061222/1166765090

:以下引用
-------------------------
start_form_tag, end_form_tag を使うと警告ができるようなりました。代わりに form_tag, を使いましょう
-------------------------

これは は使わずに
-------------------------
form_tag do
end
-------------------------
と form_tag にブロックを渡す方法が正しいかと。それと

-------------------------
scrpit/server は Rails 1.1 では WEBrick を起動し
-------------------------
ですが、実際に Rails 1.1 では lighttpd, webrick の順番で起動されます。1.2 からは mongrel があると mongrel が最優先になる変更、ですね。

HTTPステータス・コード

http://www.asahi-net.or.jp/~AX2S-KMTN/ref/status.html
以下引用

HTTPステータス・コード

【2002-07-19更新】

HTTPプロトコルでは、コンピュータ同士が通信している間に、お互いの状態(ステータス)をやり取りしています。このコードのことをステータス・コード(Status Code)と呼び、"404 Not Found"のように、エラーが発生した場合にブラウザ上に表示されたり、エラーが発生しなかった場合にも見えないところでやり取りされています。このコードの仕様は「RFC 2068」で規定されています。
ステータスコードは3桁の数字が割り当てられており、1桁目の数字はジャンル別に割り振られています。
ステータス・コードはHTTPプロトコルのバージョンアップに従って追加・修正されますが、主なステータス・コードは以下のようになっています。

コード ステータス HTTPバージョン
意味
1xx Informational 情報 -
100 Continue 継続 1.1
クライアントは、そのリクエストを継続してもよい。
101 Switching Protocols プロトコル切替え 1.1
サーバは、この接続で使用されているアプリケーション・プロトコルの変更に対するクライアントのリクエストに応じようとしている。
2xx Success 成功 -
200 OK OK 1.0
リクエストは成功した。レスポンスと共に返される情報は、リクエストで使用されたメソッドに依存し、例えば、GET、HEAD、POST、TRACEのようになる。
201 Created 生成 1.0
リクエストは果たされ、結果として新しいリソースが生成された。
202 Accepted 受理 1.0
リクエストは処理用に受け入れられたが、処理は完了していない。CGIのように別の場所でデータを生成する時など。
203 Non-Authoritative Information 非認定情報 1.1
エンティティ・ヘッダーで返されたメタ情報は、オリジナル・サーバから入手できる確定的な集合ではなく、ローカルあるいはサード・パーティーのコピーから集められたものである。
204 No Content コンテンツなし 1.0
サーバはリクエストを果たしたが、送り返すべき情報が存在しない。空のページにアクセスしようとした時など。
205 Reset Content コンテンツリセット 1.1
サーバはリクエストを果たしたが、ユーザ・エージェントは、リクエストを送信させたドキュメント・ビューをリセットするべきである。
206 Partial Content 部分的コンテンツ 1.1
サーバは、リソースに対する部分的なGETリクエストを果たした。
3xx Redirection リダイレクション -
300 Multiple Choices 多重選択 1.1
リクエストされたリソースは、それぞれが固有のロケーションをもつ表現セットの一つに対応し、ユーザ(あるいはユーザ・エージェント)が、より望ましい表現を選別してそのリクエストをそのロケーションにリダイレクトできるように、エージェント駆動型ネゴシエーション情報が提供されている。
301 Moved Permanently 恒久的移動 1.0
リクエストされたリソースは新しい恒久的なURIを割り当てられたので、このリソースへの今後の参照は、返されたURIの一つを使用するべきである。
302 Moved Temporarily 一次的移動 1.0
リクエストされたリソースは、一時的に異なるURIに属する。
303 See Other 他を参照 1.1
リクエストに対するレスポンスは異なるURIの下で発見でき、そのリソースをGETメソッドを使って検索することが望ましい。
304 Not Modified 変更なし 1.0
リクエストされたリソースが指定された日付以降に更新されていない。クライアントが条件付きGETリクエストを実行し、アクセスは許可されたが、ドキュメントが更新されていない場合には、サーバはこのステータス・コードでレスポンスを行なうべきである。
305 Use Proxy プロキシーを使用 1.1
リクエストされたリソースは、ロケーション・フィールドによって与えられるプロキシを通じてアクセスされなければならない。
4xx Client Error クライアント・エラー -
400 Bad Request 不正リクエスト 1.0
リクエストは不正な構文であるために、サーバに理解されなかった。打ち込んだURLに変な間違いがあった時など。
401 Unauthorized 許可なし 1.0
リクエストは、ユーザ認証を必要とする。認証に失敗した時など。
402 Payment Required 支払いリクエスト 1.1
(このコードは,将来の使用のために予約されている。)
403 Forbidden アクセス拒否 1.0
サーバはリクエストを理解したが、そのリクエストの実行を拒否した。アクセス権限がない時など。
404 Not Found 存在不明 1.0
サーバは、リクエストURIと一致するものを見つけられなかった。アドレスが無くなった時など。
405 Method Not Allowed 禁止メソッド 1.1
リクエスト・ラインで指定されたメソッドは許されていない。
406 Not Acceptable 受理不可 1.1
リクエストによって識別されるリソースは、リクエスト中に送信された受理ヘッダに従って、受理できない内容特性をもつレスポンス実体を生成することができるのみである。 受信の条件が適合していないため、リクエストされるリソースは受理できない。
407 Proxy Authentication Required プロクシー認証リクエスト 1.1
このコードは401(Unauthorized)と似ているが、クライアントは最初にプロキシに対する認証を行なわなければならないことを示している。
408 Request Time-out タイムアウト 1.1
クライアントは、サーバの待機時間内にリクエストを発行しなかった。
409 Conflict 衝突 1.1
リクエストは、リソースの現在の状態と衝突するために完了できなかった。
410 Gone 行方不明無い 1.1
リクエストされたリソースは、もはやそのサーバでは入手できなくなっており、転送先のアドレスも不明である。
411 Length Required 長さ要求 1.1
サーバは、定義された Content-Lengthのないリクエストの受理を拒否した。
412 Precondition Failed 前提条件失敗 1.1
一つ以上のリクエスト・ヘッダ・フィールドで与えられた前提条件が、サーバでテストされたときに偽(不正)であると評価された。
413 Request Entity Too Large リクエスト実体が大きすぎ 1.1
リクエスト実体がサーバの想定よりも、あるいは処理可能なものよりも大きいため、想定処理を拒否している。
414 Request-URI Too Large リクエストURIが大きすぎ 1.1
リクエストURIがサーバの想定よりも、あるいは処理可能なものよりも大きいため、サーバはサービスを拒否している。
415 Unsupported Media Type 非サポート・メディア・タイプ 1.1
リクエスト実体は、リクエストされたメソッドに対してリクエストされたリソースがサポートしていないフォーマットであるため、サーバがリクエストのサービスを拒否している。
5xx Server Error サーバ・エラー -
500 Internal Server Error サーバ内部エラー 1.0
サーバは、リクエストの実行を妨げる予期しない状況に遭遇した。 CGIスクリプト・エラーなど。
501 Not Implemented 未実装 1.0
サーバは、リクエストを実行するために必要な機能をサポートしていない。
502 Bad Gateway 不正ゲートウェイ 1.0
ゲートウェイあるいはプロキシとして動作しているサーバが、リクエストを実行しようとしてアクセスした上位サーバから不正なレスポンスを受信した。 不正なゲートウェイ経由のアクセスなど。
503 Service Unavailable サービス利用不可 1.0
サーバはサーバの一時的な過負荷あるいはメインテナンスのために、現在、リクエストを扱うことができない
504 Gateway Time-out ゲートウェイ・タイムアウト 1.1
ゲートウェイあるいはプロキシとして動作しているサーバが、リクエストを完了しようとしてアクセスした上位サーバからタイムリーなレスポンスを受信できなかった。
505 HTTP Version not supported 非サポートHTTPバージョン 1.1
サーバは、リクエスト・メッセージで使用されたHTTPプロトコル・バージョンをサポートしていない、あるいはサポートを拒否している。
参照・参考文献

2007年01月21日

はじめよう Ruby on Rails

4756147739.01._AA240_SCLZZZZZZZ_V64630816_.jpg

↑ を2日間に渡って読みながら、コーディング。合計6時間くらいだろうか。

この本は分かりやすい。

本の対象者は、
「これからRuby on Rails をやりたい。他の言語は書いたことある。Ruby の基本文法は知っている」
である。

2007年01月22日

ルーティングテーブルの設定

今日こんな感じに設定してみる。
-------------------
/sbin/route add default gw 10.20.138.254
-------------------

○ルーティングテーブルって何?(以下引用)
 ルータや端末が保持するパケットの配送先に関する経路情報。

 TCP/IPネットワークでパケットを送ろうとするとき、ルーティングテーブルを参照してパケットを送付すべき相手を判断する。ある端末から他の端末へとパケットを送ろうとする場合、目的の端末が自ネットワーク内にない場合、端末内にあるルーティングテーブルを参照し、パケットを中継させる端末を決定する。

 ルーティングテーブルの生成・管理方式には、あらかじめ固定されたルートを設定しておく「スタティックルーティング」と、他の端末から受けるルーティング情報を用いて定期的にルーティング情報を更新する「ダイナミックルーティング」がある。

 ルータなど多くの機器はダイナミックルーティングによってルーティングテーブルを管理するが、特にルーティング処理を行なう必要のない端末はスタティックルーティングの一種である「デフォルトルーティング」を用いることが多い。


参考:
http://e-words.jp/w/E383ABE383BCE38386E382A3E383B3E382B0E38386E383BCE38396E383AB.html
http://www.atmarkit.co.jp/fnetwork/netcom/route/route.html


○ルーティングテーブルの設定方法
●Linuxの場合
――ルーティングテーブルの表示
route[ -n][ -v][ -e| -ee][ -F][ -C][ -A アドレスファミリ名]

――経路の追加
route[ -v][ -F] add{ -host| -net} 宛先IPアドレス[/プレフィックス][ gw ゲートウェイIPアドレス][ metric メトリック数][ netmask サブネットマスクアドレス][ mss MSSサイズ][ window TCPウィンドウサイズ][ irtt 初期ラウンドトリップ時間][ mod][ dyn][ reinstate][[dev] インターフェイス名]

――拒否経路の追加
route[ -v][ -F] add{ -host| -net} 宛先IPアドレス[/プレフィックス][ metric メトリック数] reject

――経路の削除
route[ -v][ -F] del{ -host| -net} 宛先IPアドレス[/プレフィックス][ gw ゲートウェイIPアドレス][ metric メトリッ ク数][[dev] インターフェイス名]

――バージョン情報の表示
route{ -V| --version}

――ヘルプの表示
route{ -h| --help}[ -A アドレスファミリ名]
参考:
http://www.hyperdyne.co.jp/~oohashi/work/redhat/iproute2/03.shtml

TCP/IPとインタフェースの設定

参考(以下引用) http://www.glasscom.com/tone/linux/SysManage/network.htm

設定方法

TCP/IPプロトコルの設定方法は次の二つ。

  • DHCPを使う
  • 手動で設定

TCP/IPプロトコル関連の設定は/etc/rc.d/init.d/networkで行う。

主な設定ファイル

RedHat Linuxでは次のファイルにTCP/IPプロトコルに関連する設定情報が格納されている。

/etc/sysconfig/network

ネットワーク設定のなかでマシン全体に関する項目の設定。
ネットワークを使うか否か,ホスト名,デフォルトゲートウェイアドレス,ルーティングするか否か,など。

/etc/sysconfig/network-scripts/ifcfg-eth0

ネットワークインタフェース(eth0)に関する設定。
IPアドレス,ネットマスク,など。
DHCPを使うか否かは,ここで設定する。

/etc/sysconfig/network-scripts/ifcfg-lo

ループバックインタフェース(lo)に関する設定。

/etc/dhcpc/hostinfo-eth0

DHCPクライアントがDHCPサーバから入手した設定情報。
IPプロトコルに関するもの。

/etc/dhcpc/resolv.conf

DHCPクライアントがDHCPサーバから入手した設定情報。
DNSに関するもの。

/etc/host

名前をIPアドレスに変換する。自分のホスト名も記録する。

/etc/HOSTNAME 起動時に自分のホスト名が格納される。

/etc/resolv.conf

DNSサーバに関する設定。 
DNSクライアントとして動作するときに必要。
DHCPを使う場合は,/etc/dhcpc/resolv.confからコピーされる。

/etc/inetd.conf

inetdが起動するデーモンを登録する。
不要なデーモンを無効にする際に,この設定ファイルを変更する。

/etc/services

アプリケーションレベルのプロトコルのポート番号が登録されている。
特殊な目的でポート番号を変更する場合以外は,このファイルを変更してはいけない。

/etc/protocols プトロコルの番号が登録されている。このファイルを変更してはいけない。

上記の設定ファイルはTCP/IPプロトコルに関する基本的なネットワークの設定に関するものだけ。
デーモンプログラム(各種サーバ)の設定ファイルなども含めると設定ファイルはこれ以外にも多数ある。

主なコマンド

ifconfig

ネットワークインタフェースの設定状況を表示したり,設定を変更する。
ここで変更した設定は,シャットダウンすると消える。

netstat

ネットワークの稼動状態を表示する。

route

ルーティングテーブルの状態を表示したり,ルーティングテーブルの設定内容を変更する。

arp

arpキャッシュの内容を表示したり,内容を変更する。

ping

icmp echoパケットを送り,その受信を待つ。

telnet

リモートマシンにログインする。

ftp

ファイル転送。

nslookup

DNSサーバに問合せを送り,DNSの設定状況を調べる。

rcp

リモートマシンとの間でファイルをコピーする。

rsh

リモートマシンにコマンドを送り,リモートマシンで実行する。

traceroute

パケットを運ぶ途中の経路に関する状況を調べる。

2007年01月26日

Apache でリダイレクト設定

あるWebサイトリニューアルで、レガシーページへアクセスした方が 404エラーにならないために。古いURLからはリダイレクト処理をすることになり、やったのでメモ。

○.htaccessを使ったリダイレクト処理 例
--------------------------------------------------------------
# old ページから new へリダイレクト
Redirect permanent /old_dir/ http://www.live-revolution.co.jp/new_dir/
RedirectMatch (.*)/old_dir/old.html$ http://www.live-revolution.co.jp/new_dir/new.html
--------------------------------------------------------------

http://apache.rsz.jp/docs-ja/1.3/mod/mod_alias.html
http://www.shtml.jp/htaccess/redirect.html

Apache 正規表現

正規表現便利だー。

http://www.stackasterisk.jp/tech/systemConstruction/apache02_04.jsp

2007年01月27日

ウェブデザインに不可欠なツールサイトの紹介

配色のイメージがすぐ分かる!すぐれもの。


http://www.thepeoplestoolbox.com/web_designers/color

DRY化チェックリスト

以下抜粋

[DRY化チェックリスト2006冬]

1. 定義は1ヵ所で行なう
2. 無意味を排除する
3. 繰り返しは共通化する
4. 規約と関連付ける
5. 責務を疑う
6. 言語を拡張する

こういうのを自分の中で標準化・仕組み化して行けば、早く・メンテナンスしやすいコードがかけるんだろうなー。

[絶対DRY感]
>私はプログラマは本来怠け者であり、自分が楽をするためにコンピュータを駆使する生き物だと信じている。

うむ。そう思う。

>絶対DRY感の持ち主は print 文が2行続くコードを見るだけで発狂するのである。

絶対DRY感怖い...(^^;


http://wota.jp/ac/?date=20061213#p01

Sender ID

むむ。これは、一度やってみよう。

http://www.atmarkit.co.jp/fsecurity/special/82senderid/sender101.html

2007年01月29日

NOWRAP

NOWRAP : テーブルにおいて、セル内での改行を禁止します。
※非推奨となっているので、なるべく使わないほうが良い。

例:

<table>
<tr>
<td NOWRAP>文字列が長くても改行されません。</td>
 </tr>
</table>

ADOdbメモ

http://634.ayumu-baby.com/adodb/index.html
http://www.souken.co.jp/tech/php/adodb/docs-adodb-ja.htm

2007年01月30日

放射性崩壊から生み出される乱数

以下抜粋
http://www.radiumsoftware.com/0701.html#070124

>放射性同位体が崩壊を起こすタイミングは完全なランダム性に支配されていて,それを予測することは誰にもできない。だから,そのタイミングを検出して乱数の生成に利用すれば,本当の意味でのランダム性を手に入れることができる。

○ソース
http://search.cpan.org/~dcantrell/Net-Random-1.3/lib/Net/Random.pm

Smarty マニュアル

本日、PHPフレームワークmojavi で、テンプレート Smarty を利用したのでメモ。

○Smarty2.6.7 マニュアル
http://sky.freespace.jp/smarty/SmartyManual_2-6-7J_html/

例:
http://sky.freespace.jp/smarty/SmartyManual_2-6-2J_html/language.modifier.truncate.html

{{{
index.php:

$smarty = new Smarty;
$smarty->assign('articleTitle', 'Two Sisters Reunite after Eighteen Years at Checkout Counter.');
$smarty->display('index.tpl');

index.tpl:

{$articleTitle|truncate:30:"...":true}

出力:

Two Sisters Reunite after E...
}}}

postgres カラム追加

alter table [table_name] add [column_name] [データ型] ;

http://www.postgresql.jp/document/pg653doc/ej/user/sql-altertable.htm

2007年01月31日

ANSI Whois Gateway: ドメイン名 / IPアドレス検索サービス

http://whois.ansi.co.jp/

ドメインやIPを入力すると、その情報が見れる。

2007年01月

Sun Mon Tue Wed Thu Fri Sat
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

Map

About 2007年01月

2007年01月にブログ「プログラマ 福重 伸太朗 ~基本へ帰ろう~」に投稿されたすべてのエントリーです。過去のものから新しいものへ順番に並んでいます。

前のアーカイブは2006年12月です。

次のアーカイブは2007年02月です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。