[dddav] dddav 0.0.6.1をリリース

dddav 0.0.6.1をリリース。バグ修正。

バグ修正

  • ローカルディレクトリの作成で、常にカレントディレクトリに作成されるバグを修正。
  • D&Dもしくは貼り付けで、単一ファイルしかアップロードできないバグを修正。
最終更新時刻: 2008年11月18日

[PHP] PHP 5.2.0にtidy拡張モジュールを組み込む / [PHP]Zend_Http_Clientのバグ?その2

PHP 5.2.0にtidy拡張モジュールを組み込む

libtidyをインストール

wget http://tidy.sourceforge.net/src/old/tidy_src_051026.tgz
tar vxfz tidy_src_051026.tgz
cd tidy/build
make
make install

make install でエラーが出たけど気にしない。

PHPにのコンパイルオプションに--with-tidyをつけてmakeしなおし。

./configure \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-pgsql \
--enable-mbstring \
--enable-zend-multibyte \
--with-zlib \
--with-xml \
--with-gettext \
--enable-ftp \
--with-xmlrpc \
--with-ldap \
--with-pgsql \
--with-tidy
make install

Apacheを再起動

/usr/local/apache2/bin/apachectl stop
/usr/local/apache2/bin/apachectl start

Zend_Http_Clientのバグ?その2

前回とは違うバグと思わしき現象。眠いので詳しく書くのはまた今度。

現象:COOKIEの持続化ができなかった。

対処:CookieJar.phpの176行目をコメントアウト

$path = $uri->getPath();
// ↓ここコメントアウト
// $path = substr($path, 0, strrpos($path, '/'));
if (! $path) $path = '/';

最後のスラッシュ削ってるわけだけど、これによってCookie内に保存されてるパスのほうが長くなってしまい、Cookieが渡らなくなってしまう。(本当はCookieに保存されてるほうのパスのスラッシュを削るべきなのかも)

CookieJar.phpのバージョン。

@version    $Id: CookieJar.php 3834 2007-03-09 05:12:52Z bkarwin $

細かいことだけど、本当は最後に/が見つかる限りループして消さないと/cgi-bin//みたいなケースで/cgi-bin/になってしまってマズー。

最終更新時刻: 2008年11月01日

[PHP] ActiveDirectoryのユーザ一覧を取得するPHPスクリプト

ActiveDirectoryのユーザ一覧を取得するPHPスクリプト。

PHPのLDAPサポートが有効になっている必要があります。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ActiveDirectoryユーザ取得結果</title>
</head>
<body>
<h1>取得結果</h1>
<?php

$server = 'ldap://ad.example.com';
$username = 'user@example.com';
$password = 'pass';
$dn = "OU=hoge,DC=example,DC=com";

// コネクト
$ad = @ldap_connect($server);
if(!$ad){
    echo "Couldn't connect to AD!";
    exit;
}

// バインド
$bd = @ldap_bind($ad, $username, $password);
if(!$bd){
    echo "Couldn't bind to AD!";
    exit;
}

// 検索
$filter = "(cn=*)";
$result = @ldap_search($ad, $dn, $filter);
if(!$result){
    echo "search error!";
    exit;
}

// オプションを設定
ldap_set_option($ad, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($ad, LDAP_OPT_REFERRALS, 0);

$entries = ldap_get_entries($ad, $result);

echo "現在のユーザ数は" . $entries["count"] . "人です。<br />";

$accounts = array();
for ($i=0; $i < $entries["count"]; $i++){
    $display_name = mb_convert_encoding($entries[$i]["displayname"][0], mb_internal_encoding(), 'SJIS');
    $account_name = $entries[$i]['samaccountname'][0];

    echo $display_name . " " . $account_name . "<br />\n";
}

?>
</body>
</html>
最終更新時刻: 2008年11月11日

コメントスパム対策

ただのにっき(2007-02-23)を参考にスパム対策した。

最終更新時刻: 2008年10月28日

Squidをインストール

http://www.stackasterisk.jp/tech/systemConstruction/squidSat01_02.jspを参考に。

wget http://www.squid-cache.org/Versions/v2/2.6/squid-2.6.STABLE12.tar.gz
tar xvfz squid-2.6.STABLE12.tar.gz
cd squid-2.6.STABLE12
./configure --enable-err-language=Japanese \
            --enable-useragent-log \
            --enable-referer-log \
            --enable-linux-netfilter \
            --enable-poll \
            --enable-carp \
            --enable-removal-policies="heap,lru" \
            --enable-storeio="diskd,ufs" \
            --enable-auth-modules="LDAP,NCSA,PAM,SMB,MSNT" \
            --disable-ident-lookups \
            --disable-internal-dns
make
make install

./configureオプションは参考にしたサイトそのまま。

mkdir /usr/local/squid/var/cache
chown nobody.nobody -R /usr/local/squid/var
/usr/local/squid/sbin/squid -z /usr/local/squid/var/cache

/usr/local/squid/etc/squid.confを編集。下記2行をアンコメント。

acl our_networks src 192.168.1.0/24 192.168.2.0/24
http_access allow our_networks

our_networkのIPは自分のネットワーク環境に書き直し。

/usr/local/squid/sbin/squid -sD

ここまででクライアントのWindows XP + IE7でProxy経由のアクセスができることを確認。

Proxy認証はまた後で。

最終更新時刻: 2008年10月01日


[dddav] dddav 0.0.8をリリース / [dddav]dddav 0.0.7をリリース(してた) / [linux]Squidインストール(2) / C#始めました

dddav 0.0.8をリリース

リクエストもあったので、Proxy対応した0.0.8をリリース。

機能追加

  • Proxy経由でのアクセスに対応。

dddav 0.0.7をリリース(してた)

リリース記事書くの忘れてた。

機能追加

  • D&Dに対応。(リモート同士だけ)

D&Dは意外と面倒な処理が多くてこれから実装予定。今回はリモート同士のD&Dだけってことで。 ネタは揃ってるからあとはやる気と需要次第。

Squidインストール(2)

パスワード認証に対応させる。

./configure --enable-err-language=Japanese \
            --enable-useragent-log \
            --enable-referer-log \
            --enable-linux-netfilter \
            --enable-poll \
            --enable-carp \
            --enable-removal-policies="heap,lru" \
            --enable-storeio="diskd,ufs" \
            --enable-basic-auth-helpers="NCSA" \
            --disable-ident-lookups \
            --disable-internal-dns
make
make install

前回の「--enable-auth-modules」は古い書き方だったので「--enable-basic-auth-helpers」を指定してリコンパイル。

Masashi Blog ≫ Squidを参考に設定。

acl password proxy_auth REQUIRED
http_access allow password
auth_param basic program /usr/local/libexec/squid/ncsa_auth /usr/local/etc/passwd.squid

パスワードファイルを作成

/usr/local/apache2/bin/htpasswd -c /usr/local/etc/passwd.squid hoge

C#始めました

簡単にGUI作りたいってことでC#始めた。

ADSI使ってActiveDirectoryから情報引っ張ってきてあれやこれや。

C#の印象はC++をベースにJavaとVB6.0の良い所を足したような感じ。

最終更新時刻: 2008年11月12日

[dddav] dddav 0.0.9リリース

dddav - GUIのWebDAVクライアント for Windows

機能追加

  • ファイルのソートに対応。

仕様変更

  • expatを動的リンクから静的リンクに変更。libexpat.dllは必要なくなりました。

バグ修正

  • ファイル名に日本語を含むファイルのアップロード時に文字化けしていたバグを修正。
  • 半角スペースを含むURLに接続する場合、半角スペース以降が切れてしまっていたバグを修正。
最終更新時刻: 2009年02月01日