svnserveというサービスを利用している場合、パスベースでアクセス制御が可能です。(apacheでの場合も可能です。
リポジトリのauthzファイルを開きます。(ユーザ関連情報が記述されているファイルです)
conf/authzファイルの内容
[/project/hogehoge] ← アクセス制御ディレクトリ
@developer = rw ← アクセス制御対象グループ指定。
svnserveというサービスを利用している場合、パスベースでアクセス制御が可能です。(apacheでの場合も可能です。
リポジトリのauthzファイルを開きます。(ユーザ関連情報が記述されているファイルです)
conf/authzファイルの内容
[/project/hogehoge] ← アクセス制御ディレクトリ
@developer = rw ← アクセス制御対象グループ指定。
Proxy設定
yumの設定
/etc/yum.conf
proxy=http:// [servername or server IP] :[port number]/
wgetの設定
/etc/wgetrc
http_proxy=http://[servername or server IP] :[port number]/
bashの設定
~/.bash_profile
http_proxy="http://[servername or server IP] :[port number]/"
export http_proxy
CSVファイルのダウンロードを作成し、通常のHTTPでのダウンロードは成功しますが、IEで、HTTPS(SSL)での接続の場合、IEだと次のような「ダウンロードできません」というメッセージが表示されます。
---------------------------
Windows Internet Explorer
---------------------------
Internet Explorer では、xxxxxxxxxxxxxx をダウンロードできません。このインターネットのサイトを開くことができませんでした。要求されたサイトが使用できないか、見つけることができません。後でやり直してください。
この現象は、まったく理解できませんでしたが、SSL環境下で、IEという条件でのみ発生します。SSL+Firefoxだと発生しません。
以下のブログが参考になりました。
http://blog.gnetworks.co.jp/nk2/?p=54(開発日誌)
マイクロソフトのサポートページで解説されています。、
http://support.microsoft.com/kb/436605/ja
サポートページによると、IE5,IE6で確認とされていますが、IE7でも同様に発生します。
no-cache指定されていると発生するようです。
なんとなく意味がわかりました。IEだとページ閲覧もダウンロードもすべてtemporary Internet filesフォルダへいったん保存されます。保存されたデータは、no-cache指定されていると、即削除されるため、ダウンロードの場合の、
ダウンロード→temporary→指定フォルダ
この流れが実現できないためかと思われます。ダウンロード→temporaryこの時点で削除されてしまうため。
PHPで、これを回避するには、cacheするように設定することで対応可能です。
header("Cache-Control: public");
header("Pragma: public");
Outlook(Outlook Expressも?)で添付ファイルをつけてメール送信すると、なんとも不思議なことに勝手にリッチテキスト形式になるようで。
E-Mailの形式としては、リッチテキストは、SMTPのプロトコルとしては扱えませんので、添付ファイル扱いとなります。リッチテキスト部分だけ添付ファイルとなればいいのですが、なんと添付ファイル込みでのリッチテキストとなります。設定によっては、テキスト形式としているのにも関わらず、リッチテキスト化されてしまう現象も確認しております。
また、社内のネットワークで、メール環境をMS Exchangeで構築されている場合、MS Exchangeの設定でメールデータをリッチテキストに変換することそ推奨しているようです。添付ファイルがあった場合。
そうすると、どんなことをしても、添付ファイルは勝手にリッチテキスト内にあることになり、さらにbase64で暗号化されてしまいます。
このとき、リッチテキスト形式をメール内で扱うための形式をTNEF(Transport Neutral Encapsulation Format)といいます。
この形式については、日本語の記事がなかなか見つからず、以下見つけたのが、squirrelmailのt-nefプラグイン。これは、phpで書かれていますので、解析できるかなと思ってダウンロードしてみました。
いくつか修正ポイントはありましたが、わりと修正は簡単でした。修正したのち、includeでライブラリを読み込んでなんとか、t-nef形式を解読できるようになりました。
このプラグインのライセンスについては、まだちゃんと理解していませんが、問題なければ、ここ?どこ?かで公開したいと思います。
使い方は、以下。
http://www.squirrelmail.org/plugin_view.php?id=62
$params['include_bodies'] = true;
$params['decode_bodies'] = true;
$params['decode_headers'] = true;
$params['input'] = $mail_source; // メールをセット
$params['crlf'] = '\r\n';
// PEAR Mail_mimeDecode
$structure = Mail_mimeDecode::decode($params);
// 添付ファイルがms-tnefか判定
$tnef_body = '';
$csv_file = '';
if($structure->ctype_primary === 'multipart' ){
// マルチパート(添付があるとマルチパート)
for($p=0;$p<count($structure->parts);$p++){
if($structure->parts[$p]->ctype_secondary == 'ms-tnef'){
// found it!
$tnef_body = $structure->parts[$p]->body;
break; }
} }
if($structure->parts[$p]->ctype_parameters['name'] == '目的のファイル名'){
// 通常の添付
$csv_file = $structure->parts[$p]->body;
break;
}
if($tnef_body != ''){
include_once('attachment_tnef/tnef_attachment.php');
include_once('attachment_tnef/debug_functions.php');
include_once('attachment_tnef/functions.php');
include_once('attachment_tnef/tnef_file_base.php');
include_once('attachment_tnef/tnef_consts.php');
include_once('attachment_tnef/tnef_file.php');
include_once('attachment_tnef/tnef_mailinfo.php');
include_once('attachment_tnef/tnef_file_rtf.php');
include_once('attachment_tnef/tnef_vcard.php');
include_once('attachment_tnef/tnef_date.php');
$tnef_debug = true;
$attachment = new TnefAttachment($tnef_debug);
error_reporting(E_ALL);
$attachment->decodeTnef($tnef_body)
; $tnef_files = &$attachment->getFilesNested();
for($t=0;$t<count($tnef_files);$t++){
// hogehoge.txtファイルを探す
if($tnef_files[$t]->name == 'hogehoge.txt'){
$csv_file = $tnef_files[$t]->content;
break;
}
}
}
}
}