2010年9月1日水曜日

cakePHP ログインしてもリンクを押せばすぐにログアウトになる

フロントにワードプレスをおいて


あるURLが来たら、cakePHPにリライトするってことしてるとします。


この状態でcakeのAuthComponentsを使ってログインしたとき、


ログインはできてるっぽいけど、別のリンクを押したらすぐに


ログアウト状態になって、ログインを求められました。


 


この時の回避策


core.phpの


 


Configure::write('Session.checkAgent', false);


にする。

2010年2月6日土曜日

fancybox ssl ie7でセキュリティダイアログが出る

ある サイトでFancyBoxを使ってるんだけど
ssl対応にしたら、IE7だけ全画面で

「このページにはセキュリティで保護されている項目と保護されていない項目が含まれています」


のメッセージがでる。

ソースを全部みてみたんだけど、
httpでアクセスしている画像やCSSなどもなさそうなのに、
なんでだろーと思ったらFancyBoxが原因でした。

対応策は
1.blank.gif(1pxの透過gif)を作成
2.FancyBoxのcss [jquery.fancybox-1.2.6.css]の中の

a#fancy_left, a#fancy_right {
・・・
}

の中にある、background-imageを以下のように書き換える

// background-image: url("data:image/gif;base64,AAAA");
background-image: url("/img/blank.gif");


僕の場合、これでエラーが出なくなりましたよ。

2010年1月16日土曜日

xoops Legacy IEでログインできない

xoopsを入れてコミュニティページを作ろうとしたが


IEでログインできない状況が発生しました。


ただ、出来るパソコンと出来ないパソコンがあって


そこの原因追求はできなかったんだけど・・。


環境としては


「xxx.net」というドメインがあって


1.http://xxx.net/ にwordpress をインストール


2.http://cm.xxx.net/ にxoops をインストール


 


対処方法


 管理者画面に入って


 互換モジュール  >  全般設定 


   ・セッションの設定をカスタマイズする: 「はい」 
・セッションIDの保存に使用するクッキーの名称: 「特有のものに書き換え」 




これで、ログインできるようになりました。


 

2010年1月14日木曜日

hibernate3 no-proxyモード

解釈が間違ってるのかもしれないので、間違ってたらごめんなさい。


hibernateで開発してて


many-to-oneを取得する時の遅延ロードは


デフォルトで lazy=proxyになっている。


この状態で、N対1のNをリストで取得しようとしたときに、


lazyがきかなくて、1のデータを取得するSQLが大量に流れてしまう。


そこでlazy=no-proxyに設定したけど、有効にならないみたい。


いろいろ調べてみると


http://www.redhat.com/docs/manuals/jboss/jboss-eap-4.2/ja_JP/html/Hibernate_Reference_Guide/Fetching_strategies-Using_lazy_property_fetching.html


あたりで、バイトコード実装(ビルド時にdaoのソースを読み込む?)をAntのタスクで行えば、


no-proxyが有効になり、無駄なデータは取得しないようになった。


build.xmlに、以下のタスクを追加して、compile後に呼んでやった。


 


<target name="build.instrument" depends="build.compile">


<taskdef name="instrument" classname="org.hibernate.tool.instrument.cglib.InstrumentTask">


<classpath refid="build.class.path" />


</taskdef>


<instrument verbose="true">


<fileset dir="${build}/dao">


<include name="*.class"/>


</fileset>


</instrument>


</target>  


 

注意しなくちゃいけないのが、

 


ドキュメントには


classname="org.hibernate.tool.instrument.InstrumentTask"


だがそんなクラスはないので、


 


classname="org.hibernate.tool.instrument.cglib.InstrumentTask"


を指定してやること。

 

 

2010年1月6日水曜日

エクセルで数式が値に変換されない

該当セルを選択して表示形式を「標準」に設定。


一度、F2で編集し、Enterを押す。