2010.07.01

Category: 未分類 / Tags:

ssl の csr の内容を確認する

秘密鍵の内容を確認

openssl rsa -in example.key -text

csrの内容確認

openssl req -in example.csr -text

2009.11.06

Category: 未分類 / Tags:

mod_rewrite を使った、.htaccessでの携帯サイトの振り分け方法

mod_rewrite をいつも手こずるのでメモ。
携帯サイトとPCサイトの振り分けとか、

携帯サイトは、/m/ フォルダにあるとする。

TOPレベル(ドキュメントルート)の.htaccessに下記を設置

# モバイル専用ディレクトリに設置
# ディレクトリが/m以下でなくで,モバイルの場合は、/mに移動
RewriteEngine On
# ディレクトリが/m以下でない(ループを防ぐため)
RewriteCond %{REQUEST_URI} !^m/.*$
# DoCoMo
RewriteCond %{HTTP_USER_AGENT} ^DoCoMo [NC,OR]
# Softbank
RewriteCond %{HTTP_USER_AGENT} ^J-PHONE [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Vodafone [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^SoftBank [NC,OR]
# AU KDDI
RewriteCond %{HTTP_USER_AGENT} ^KDDI [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^UP.Browser
#redirect
RewriteRule ^.*$ /m/ [R]

で、USER_AGENTが、モバイル(偽装を含む)の場合のみ閲覧可。
注意点

  • USER_AGENTをチェックしている、最後の行には [NC,OR] を付けない、付けると全てにあてはまる。
  • USER_AGENTを偽装されても入れるため、より厳密にする場合はキャリアが出しているIPにそって制限をかける。
  • ^.*$や、!^m/.*$ の表示は、^/.*$や、!^/m/.*$ 等で動く場合あり、httpd_conf の設定に依存するので、動かない場合は付けたり消したりして試す。

その他サンプル。
サイトを閉じて、それぞれのTOPを見せる場合。
ドキュメントルートの.htaccessに

#mobile用
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^DoCoMo [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^J-PHONE [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Vodafone [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^SoftBank [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^KDDI [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^UP.Browser
RewriteRule ^.*$ /m/index.html [R]

#PC用
RewriteCond %{REQUEST_URI} !^/index.html$
RewriteCond %{REQUEST_URI} !^.*\.(css|js|jpg|gif)$
RewriteRule ^.*$ /index.html [R]

モバイルのUSER_AGENTの場合は、/m/フォルダにリダイレクト。
PCの場合は、/index.htmlへリダイレクト。
その時、css js jpg gif へのアクセスは許可する。(もちろん、/index.html自体にも)

/m/フォルダに設置 (該当外のアクセスは一旦TOPへ戻す)

RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} !^(DoCoMo|J-PHONE|Vodafone|SoftBank|KDDI|UP.Browser)
RewriteCond %{REQUEST_URI} !^/m/index\.html$ [NC,OR]
RewriteCond %{REQUEST_URI} !^.*\.(css|js|jpg|gif)$
RewriteRule ^.*$ /index.html [R]

モバイルのUSER_AGENT以外の場合は、/index.htmlへリダイレクト。
モバイルでのアクセスの場合は、css js jpg gif へのアクセスは許可する。(もちろん、/m/index.html自体にも)
面倒なので、USER_AGENTの行を1行で書いてみた。

2009.10.27

Category: 未分類 / Tags:

wordpressで、PostgreSQLを使う方法

一応、PostgreSQLも使えるみたいなので

http://www.macminiosx.com/2009/07/wordpress_282postgresqlpg4wp.html
が参考になりますが、一点。PostgreSQLをパスワード無しのユーザでアクセスする場合。

http://wordpress.org/extend/plugins/postgresql-for-wordpress/
から、PG4WPの最新版をダウンロード

解凍後、wordpressのフォルダの中のwp-content
にアップロード(もしくはそこで解凍)

pw4wpフォルダの中の、driver_pgsql.phpを編集
92行目あたりの

$conn = pg_connect(”host=$pg_server user=$pg_user password=$pg_password dbname=$dbname”);

$conn = pg_connect(”host=$pg_server user=$pg_user dbname=$dbname”);

とすれば、OK
もしくは、

if($pg_password){
$conn = pg_connect(”host=$pg_server user=$pg_user password=$pg_password dbname=$dbname”);
}else{
$conn = pg_connect(”host=$pg_server user=$pg_user dbname=$dbname”);
}

とすれば両方対応できます。

あとは、通常通りやっいればPostgreSQLが使えます。

2009.10.23

Category: 未分類 / Tags:

pgfoundryについて

http://pgfoundry.org/

PostgreSQLの周辺ツールが色々あります。

一個ずつのせていけたらいいなぁ。。

というか、12月のセミナーの題材にしようか思案中。。

2009.10.15

Category: Apache, 未分類 / Tags:

RedirectMatch のリダイレクト先URLで、&(アンパサンド)がある場合

RedirectMatch のリダイレクト先のURLの中に、&(アンパサンド)がある場合、
置換されてしまう。

RedirectMatch ^/test/?  http://www.pictnotes.jp?param1=hoge&param2=fuga

RedirectMatch ^/test/? http://www.pictnotes.jp?param1=hoge/test

RedirectMatch ^(/test/?)  http://www.pictnotes.jp?param1=hoge&param2=fuga

RedirectMatch ^(/test/?)  http://www.pictnotes.jp?param1=hogeparam2=fuga
(&が消えている状態)

&を使うためには、エスケープしてあげればOK

RedirectMatch ^(/test/?)  http://www.pictnotes.jp?param1=hoge\&param2=fuga
& -> \&

2008.06.10

Category: PHP, 未分類 / Tags:

PHPを出来るだけ早く処理するためのテクニック(トピックス)

1.ループ内の換算、減算は、「前置加算子、減算子」の方が「後置加算子、減算子」よりはやい
つまりは、++$i, –$i をつかえってこと。
2.ループの場合は、do-whileが、whileより、ちょこっとが早い。for文が一番おそい。
可視性をあげるためにも、whileを推奨
3.foreach と while(each()) は、foreachがはやい
4.foreach で、keyを取得しない froeach( $array as $value ){} だけの方が1.1倍~1.3倍早い。
参考URL
http://itpro.nikkeibp.co.jp/article/COLUMN/20070704/276650/