GUiLZ Project Personal & Experimental Blog

Monthly Archives: 8月 2007

■ [ネット] XOOPS BM-Survey(Multi Survey)モジュール Ver.0.8 をSSL環境でIE6に対応させてみた

08月02日の日記で書いたwrapsと同様、BM-SurveyもSSL環境でIE6を使って、管理画面からCSVファイルをダウンロードしようとすると、自分の環境ではダウンロードできない(wrapsと違ってエラーも表示されない)。

そこで同様の修正を行うことで、IE6からアンケート結果のCSVダウンロードが可能となった。

bmsurvey/admin/include/where/download.inc

の73行目、

header("Content-Transfer-Encoding: ".$csv_charset);

の直前に、

header("Pragma: private");
header("Cache-Control: public");

という2行を挿入。

改造後のアンケートは行っていないが、編集した場所はアンケートの実施とは無関係な部分なので、問題ないと思われる。

■09/27追記

改変後何度かアンケートを行っているが、問題は発生していない。

■2008/03/17追記

最新バージョンの0.84でこの問題への対策が行われているようなので、最新バージョンではこのような修正は必要ないと思われる。自分自身はテストをしていないので詳細は不明だが。

■ [ネット] XOOPS wrapsモジュールをSSL環境でIE6に対応させてみた

現在、XOOPSのwrapsモジュールを仕事で使用しているのだが、実験機ではSSLなしで構築し、本番機はSSL環境ということで、最近その入れ替えを行った。

が、wraps内のhtmlからswfやpdfへリンクしたファイルをダウンロードしようとすると、ファイルが見つからないというエラーが発生するようになった。

この症状はIE6だけでFirefoxは問題ないことから、IE6のバグだろうと検索してみると、あるわあるわ。で、その辺りに載ってる解決法には、ヘッダに session_cache_limiter を public として渡せ、とかって書いてあるんだけど、それは既にwrapsのコードにセットされている。

どうしたものかと考えながら検索すると、Pragma というヘッダーもセットした方がいいというページがあったため、それを参考にして

header("Pragma: private");

というコードを、

XOOPS_TRUST_PATH/modules/wraps/main/index.php

の、

header("Cache-Control: public, max-age=$cache_limit");

という行の直前に挿入することで解決。無事にファイルのダウンロードができるようになった。

またこのコードのおかげかどうかは分からないが、SSL上のwrapsで動かなかったJavascriptも正常に動作するようになったのだが(こちらもFirefoxは修正前から動いていたし、SSL環境ではない実験機ではIE6でも動いていた)、関係あるかどうかは不明。

ちなみに、Pragma のパラメータは public でも動くけれど、自分の環境ではタイトルが変になったので、private にしている。

以上、同じ症状で困っている人がいるかどうかは分からないけど、メモ。

スポンサードリンク

Twitter
利用中のサービス

GUiLZ Project では、以下のサービスを利用しています。


関連サイト
巡回先サイト様
アーカイブ