2004年7月アーカイブ

うちのプロバイダから、IP電話に対応するとの連絡が来ました!
いまや、大手のブロードバンド接続では基本料金に含まれてしまっているIP電話ですが、小さなプロバイダでは逆に手が出せない状態でした。
しかし、DTIが「POINT Phone select」とか言うサービスで、プロバイダの代わりにIP電話のサービスをやってくれるのだそうです。
料金は、月額294円。提携のIP電話とは無料で通話ができるんだそうです。
提携先はKDDI系、日本テレコム系、フュージョン系あたりが主なようで、OCN、@NiftyなどのNTT Com系は繋がらないようです。

が、使うためにはVoIPアダプタが必要で、うちのプロバイダではレンタルをしないので、購入しないといけないそうです。
DTIのページによると、推奨はNECのAterm WR7610HV(PT)だそうで、オフィシャルショップでの価格は16,590円!
こいつを、今のルータPCと光終端装置との間に入れる必要があるみたいで、アダプタと良いながらルータと言う名前がついているので激しく不安です。
仕様を見ると、PPPoEブリッジ8セッションなんて書いてあるので、PPPoEブリッジを使えば今まで通り使えるのかしらん?

しかし、現在では月の通話料が300円もいかないうちの状況(電話全然かけない)では、IP電話化は望めないのでした・・・。
# う~、使えないかも知れないと思うと、余計に買ってみて繋いでみたい~!
sambaの2.2から、プリンタ周りがちょっと変わったらしい。
ちょうど、新しいノートの環境設定をしたので、この辺をちょっと見直してみる。
まずは、smb.confに以下を追加する。
[global]
	printer admin = @ntadmin

[print$]
	path = /var/samba/printers
	guest ok = yes
	browseable = yes
	read only = yes
	write list = @ntadmin,root
	force create mode = 0664
	force directory mode = 0775
続いて、/etc/groupにntadminグループを作成し、プリンタアドミンにしたいアカウントを追加する。
/var/samba/printersディレクトリを作成し、さらに以下のディレクトリを作成する。
# cd /var/samba/printers
# mkdir COLOR
# mkdir W32X86
# chgrp ntadmin COLOR W32X86
# chmod g+w COLOR W32X86
マニュアルには、COLORは書いていないが、うちのcanonのPIXUS560iは、これがないとエラーになった。
さらに、マニュアルには、W32MIPSなどのほかのアーキテクチャ用のディレクトリも載っているが、うちにはWindows2kとxpしかないのでこれで良いのだ。
後は、Windowsからサーバを選び、プリンタを選んでドライバをインストールすると、/var/samba/printersにドライバがコピーされる。
こうなると、次に新しいマシンを繋いでネットワークプリンタをセットアップするときには、ドライバが自動でインストールされるというわけだ。便利便利。
今までapache1.3+modsslで運用していたのだが、apache2.0に上げてみた。
あまりに大変だったので、詳細は明日書きます・・・。
なんとか、apache2.0が動くようになったみたいです。
今回は、めっちゃはまった~(汗)

まずは、動機から。
subversionと言うバージョン管理ツールがあります。こいつをリモートから使うには、sshを使うか、svnservを使うか、davを使うかのどれかになるのですが、折角なのでdavを使おうと思ったのが事の始まりです。
今までは、apache1.3+modsslでしたが、davを使うためにはapache2系でないとなりません。
そこで、apache2を入れようと思って調べたところ、mod_perl2がperl5.8以上を要求してきました。
以前システムのperl5.0から5.6にしたときには、単にperl5.6をインストールしてからp5-*をportupgrade -f すれば良かったのですが、5.6から5.8はそう簡単に行きません。(行くのかも知れないけど、portupgradeの使い方がわからない)
で、まずはapache1.3やperl5.6のアンインストールです。
apacheに依存しているmod_php4や、perlに依存しているamavisd, spamassassinなどもすべてアンインストールになるため、一度postfixも止めました。
で、泣きながらperl5.8.4をインストールし、perl関係のライブラリをインストールし、apache2.0.50をインストールしました。
モジュール系は、mod_perl2やmod_jk2-apache2など、apache2用のものを選んで入れました。apache2用がわかれていないものでも、makeのオプションにWITH_APACHE2やWITH_MODPERL2などを指定する必要があるものもありました。
全てのインストールが終わったら、httpd.confを1.3用のものから2.0用に書き換えなくてはなりません。
とりあえず、DocumentRootなどのパスを指定する系を書き換えて、apacheを起動してみました。
・・・が、エラーが出て起動しません。

VirtualHostの設定が変わっている

うちの場合は、VirtualHostを使って、http用に二つのホスト名、https用に一つのホスト名を使っているのですが、* port と non-* port を混ぜて使えないよ!みたいなエラーが出てapacheが起動しません。
どうも、2.0になってこの辺の解釈が厳しくなったみたいです。
NameVirtualHost www.example.com
<VirtualHost www.example.com:80>
</VirtualHost>
<VirtualHost www.other.com:80>
</VirtualHost>
<VirtualHost www.example.com:443>
</VirtualHost>
のような構成だったのですが、
NameVirtualHost www.example.com:80
<VirtualHost www.example.com:80>
</VirtualHost>
<VirtualHost www.other.com:80>
</VirtualHost>
NameVirtualHost www.example.com:443
<VirtualHost www.example.com:443>
</VirtualHost>
のように直すことで起動するようになりました。

ページが表示されない!

apacheが起動したので、早速ブラウザからアクセスしてみます。
・・・が、ファイルのダウンロードのダイアログが出て、ページが表示されません。
なんで~?と思っていろいろ調べたのですが、どうも content-typeをtext/htmlとして送ってくれていないようです。
さんざん悩んだ挙句、httpd.confではなくて、.htaccessの方に書いてあったSSIの設定のせいでした。
Options +Includes
AddType text/x-server-parsed-html .html
AddType text/x-server-parsed-html .htm
のように書いてあったのですが、apache2ではSSIを使うためには以下のように書くのでした。
Options +Includes
AddOutputFilter INCLUDES .html
AddOutputFilter INCLUDES .htm
SSIが、OutputFilterで実現されるようになったみたいです。

日本語が化ける!

これで、いよいよページが表示されるようになりました!が、文字が化けています。
ページには、ちゃんとmetaタグでcharsetが指定してあるのですが、関係なく iso-8859-1として認識されてしまうようです。
これについては、httpd.confのAddDefaultCharsetをデフォルトのISO-885-1から以下のように変更しました。
AddDefaultCharset Off

mod_gzipからmod_deflateへ

今までは、apache1.3にmod_gzipを追加して使っていたのですが、apache2.0からはmod_deflateがデフォルトで付いてきます。
マニュアルのとおりに、
SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
Header append Vary User-Agent env=!dont-vary
のように書くことで有効になりました。ログに圧縮率を出したかったので、
DeflateFilterNote ratio
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %{ratio}n%%" combined
の記述も追加しておきました。
ちなみに、proxy経由でアクセスする場合、ブラウザ(IE)の設定で、「プロキシ接続でHTTP 1.1を使用する」にチェックをしていないと、圧縮が有効になりませんでした。

最後の難関mod_perl2

MovableTypeを高速化するmod_perl。是非、今まで通り動いて欲しいところですが、動かないんだな、これが。
mod_perlとmod_perl2の違いを解説しているページなどを見ながら、一生懸命ためした結果、
PerlSetEnv PERL5LIB /var/www/docs/cgi-bin/mt/lib:/var/www/docs/cgi-bin/mt/extlib
PerlModule Apache::Registry
<Directory "/var/www/docs/cgi-bin/mt">
  SetHandler perl-script
  PerlHandler Apache::Registry
  PerlModule Apache::DBI
  Options +ExecCGI
  PerlSendHeader Off
</Directory>
と言う設定だったものを、
PerlSetEnv PERL5LIB /var/www/docs/cgi-bin/mt/lib:/var/www/docs/cgi-bin/mt/extlib
PerlModule Apache2
PerlModule ModPerl::Registry
PerlModule Apache::DBI
<Directory "/var/www/docs/cgi-bin/mt">
  SetHandler perl-script
  PerlResponseHandler ModPerl::Registry
  Options +ExecCGI
  PerlOptions -ParseHeaders
</Directory>
と書き換えて、さらにスクリプトの実行ディレクトリがmod_perlのときとは変わってしまうので、mtのスクリプトを書き換えたりしましたが、結局うまく行きませんでした。
どうも、mod_perlのAPI自体が変わってしまったために、MT自身を書き換えないといけないようです。(最後に出てたエラーは、Apache::Cookie関連でした)
と、言うわけで、とりあえずmod_perl2でMTを動かすのは諦めることにしました。

さて、長くなったので、DAVとsubversionは別のエントリーにすることにします。

DAV

| | コメント(0) | トラックバック(0)| Edit
apache2.0にしたので、DAVを使ってみることにします。
httpd.confの、SSLの部分に、以下を追加します。
DAVLockDB /var/www/DAVLock
Alias /dav "/var/www/dav"
<Location /dav>
    DAV On
    AuthType Digest
    AuthName DAV
    AuthDigestFile /usr/local/etc/apache2/digest.pw
    Require valid-user
</Location>
で、上の設定では/var/www/davを使うので、/var/www/davディレクトリを作成し、オーナーをwwwにしておきます。
ロックファイルは/var/www/に作るようにしたので、このディレクトリもwwwが書ける必要があります。
davに書ける人を制限したかったので、/usr/local/etc/apache2/digest.pwにパスワードエントリーを作成します。
# htdigest -c /usr/local/etc/apache2/digest.pw hogehoge
などのようにすると、hogehogeと言うユーザを作成できます。
後は、apacheを再起動して、WindowsからWEBフォルダの追加で、URLを指定してやると、無事にアクセスできます。
いろいろなサイトで、mod_encodingのことを書いてありますが、私の場合は特に設定しなくても、サーバ上にはutf-8で置かれているようです。
CVSに取って代わるバージョン管理システム!と言うふれこみの、subversionを入れてみました。
# ちなみに、このサイトのblogやwikiでない部分は、cvsで管理されています。
portsからdevel/subversionをインストール。makeオプションは、WITH_MOD_DAV_SVN=yes
このオプションを付けると、apache2にmod_dav_svnがインストールされます。さらに、svnが使用するapr-utilと言うライブラリが、apache2に付属のものになります。
apache2に付属のものを使わない場合は、portsのaprが使われます。
別の場所で一度インストールしたのですが、そのときはapacheのバージョンが2.0.49で、apache2に含まれるapr-utilがlibiconvをリンクしてくれませんでした。
おかげで、subversionで日本語が使えないと言う問題が発生したのですが、apache2.0.50のapr-utilはデフォルトでiconvを使ってくれるようです。

subversionのインストールが終わったら、httpd.confに以下の設定を追加します。
<Location /svn>
    DAV svn
    SVNParentPath /var/svn
    SVNIndexXSLT "/svnindex.xsl"
    AuthzSVNAccessFile /usr/local/etc/apache2/svnauth
    Satysfy Any
    Require valid-user
    AuthType Basic
    AuthName "Subversion repository"
    AuthUserFile /usr/local/etc/apache2/svnpasswd
</Location>
subversionのリポジトリを置くディレクトリとして、/var/svnを指定していますので、このディレクトリを作成してオーナーをwwwにしておきます。
さらに、xslとして/svnindex.xslを指定していますので、subversionのソースのtools/xsltにある二つのファイルを、documentrootにコピーします。(documentroot以外にするときは、svnindex.xslの中のcssのパスを書き換える必要があります)
続いて、/usr/local/etc/apache2/svnauthファイルを作成します。このファイルには、リポジトリ毎のアクセス権を記述します。
とりあえず、私は以下のようにしました。
[/]
false = rw
[/]は、全てのリポジトリと言う意味です。この設定で、falseと言うユーザは全てのリポジトリに読み書きの権限をもちます。
/usr/local/etc/apache2/svnpasswdにユーザを登録します。
# htpasswd -c -m /usr/local/etc/apache2/svnpasswd false
とやると、ユーザfalseが追加できます。
続いて、リポジトリを作ってみます。
# cd /var/svn
# svnadmin create rep
# chown -R www:www rep
これで、repと言う名前のリポジトリができました。
クライアントからのアクセスは、https://www.wizard-limit.net/svn/rep/プロジェクト名 などのURLで行います。
proxy経由で、FreeBSDのsvnコマンドやWindowsのTortoiseSVNでアクセスできることを確認しました。
と、言うわけでMTをmod_perl2化を実現しようと、ソースをいじってみましたが、挫折しました。
mod_perl2を作ってる人は、なんでこんなにインターフェイスを大きく変えたんでしょうね~(泣)

一応途中までのやったことを書いておきます。
その前に参考URLは、mod_perl2のドキュメントのUser's guideの下のA Reference to mod_perl 1.0 to mod_perl 2.0 Migration. と言うドキュメントと、libapreq2のApache::Requestあたりです。

まず、httpd.confの設定ですが、
PerlSwitches -I/var/www/docs/cgi-bin/mt/lib -I/var/www/docs/cgi-bin/mt/extlib
PerlModule Apache2
PerlModule ModPerl::Registry
PerlModule Apache::DBI
<Directory "/var/www/docs/cgi-bin/mt">
  SetHandler perl-script
  PerlResponseHandler ModPerl::Registry
  Options +ExecCGI
  PerlOptions -ParseHeaders
</Directory>
みたいな感じです。
  • 環境変数PERL5LIBの変わりに、PerlSwitches -Iを使います。
  • PerlModule Apache2を追加します。
  • Apache::Registryの変わりに、ModPerl::Registryを使います。
  • PerlHandlerの変わりに、PerlResponseHandlerを使います。
  • PerlSendHeader Offの変わりに、PerlOptions -ParseHeadersを使います。
mod_perl2では、スクリプトが実行されるディレクトリがスクリプトのディレクトリではなくなってしまったので、$MT/*.cgiの先頭に以下を追加します。
chdir("/var/www/docs/cgi-bin/mt/");
# 上の例では、/var/www/docs/cgi-bin/mt にMTがインストールされています。

続いて、$MT/lib/MT/App.pmをmod_perl2に合わせて修正します。
  • 63行目付近
    $app->{apache}->send_http_header($type);
    
    $app->{apache}->content_type($type);
    
    に変更。
  • 183行目付近
    $class->fetch;
    
    $class->fetch($app->{apache});
    
    に変更。
  • 283行目付近
    $app->{apache}->status(Apache::Constants::REDIRECT());
    
    use Apache::Const -compile => qw(:common);
    $app->{apache}->status(Apache::REDIRECT);
    
    に変更。
  • 353行目付近
    my $tab = $q->parms;
    
    my $tab = $q->param;
    
    に変更。
で、はまったのが、
  • 209行目付近
    my $status = $q->parse;
    unless ($status == Apache::Constants::OK()) {
    
    ここで、$qはApache::Requestだと思うのですが、parseなんてAPIリファレンスに載ってません。リファレンスを読んだ感じだと、statusを呼べば良さそうなんですが、呼ぶとmod_perlが落ちてしまいます。
    さらに、Apache::Constants::OKもmod_perl2にはないので、ここも変える必要があります。
  • 445行目付近
    $ENV{MOD_PERL} ? $app->{apache}->connection->remote_ip : $ENV{REMOTE_ADDR};
    
    $ENV{MOD_PERL} ? $app->{apache}->connection->remote_addr->ip_get : $ENV{REMOTE_ADDR};
    
    に変更してみたのですが、Apache::Connectionのremote_addrなんて知らないよう!と言われてしまいます。
  • MT/lib/App/Comments.pm 30行目付近
    An error occurred: Usage: $table->get($key) at lib/MT/App/Comments.pm line 32.
    と言うエラーが出ました。APIリファレンスによると、$q->paramは引数が1個のバージョンしか載っていないようで、設定の方法がわかりません。
    とりあえず、
    $q->param('__mode', 'post');
    
    $q->param->set('__mode', 'post');
    
    のように変更して見ましたが、コメントのポスト画面が再度表示されるだけで、うまく動かないようです。
これが解決できなかったので諦めました。
ドキュメントの日本語訳には、psvn.elと言うのが出てくる。
これは、pcl-cvs.elのsvn版らしいんだけど、そもそもpcl-cvsなんて使ったことがない。
私としては、やはりvcで使いたいのである。
と思ってgoogleしたりして探していたところ、vc-svn.elって言うのがあるらしい。ネットには3種類の同じ名前で別のものがあるなんて書いてあったけど、気がついたらsubversionのソースのcontrib/client-sideにも入っていた。
最終的にはJimさん版が採用されたのかな?
とりあえず、unixの方でemacsとxemacsに入れてみたけど、xemacsの方はエラーが出て使えず。emacsの方は使えたみたいだけど・・・。

  • 日本語のコメントやファイル名は、そのままだと駄目みたい。設定で行けるのかどうかは未確認。
  • 他のクライアントでcommitした内容を、emacsからupdateする方法がわからない。cvsのときは、C-x C-qでupdateできたんだけど・・・。

追記
WindowsのMeadowで試したら、日本語のコメントはいけたので、emacsでも設定で行けそう。emacsからupdateする方法はM-x vc-mergeで行けた。
と、言うわけで、unixの方は、default-process-coding-system又はprocess-coding-system-alistを適切に設定すれば日本語のコメントは行けることがわかった。
私の場合(LANGがja_JP.eucJPの場合)
(setq process-coding-system-alist '(("svn" . euc-jp)))
を.emacsに書くことで解決できた。
さらに、ファイル名の方も、
(setq default-file-name-coding-system 'euc-jp)
と書くことで、日本語のファイル名が扱えるようになった。
PSを取ると、amavisdのperlのゾンビがやたらいっぱいいる。
perlを5.8に上げてからかな?
と、言うわけで、/usr/local/sbin/amavisdを読んで見ると、以下のような部分があったので、\&deadbabeの方の行を有効にして様子を見てみることにする。
# If IGNORE leaves zombies behind on your system,
# switch the comments between the two lines below
# $SIG{CHLD} = \&deadbabe;
$SIG{CHLD} = 'IGNORE';
Windowsから svn+sshを快適に使う方法。
うちの場合は、apache2でmod_dav_svnを使っているので快適なんだけれども、会社の場合はapache2を入れるのが面倒だったので、svn+sshを使いたい。
んが、TortoiseSVNを入れただけだと、svn+sshでのアクセスが失敗する。
いろいろ調べた結果、TortoiseSVNが使うsshは、PuTTYのものらしく、PuTTYでセッションを保存してあげないと行けないらしい。

PuTTYは、PuTTY Download Pageから持ってくる。全部入ってるputty.zipを持ってくると良い。
で、中に入っているexeをPATHの通ったところに置く。
続いて、キーファイルを作る。
puttygenを実行すると、キーファイルが作れる。Generateを押して適当にマウスを動かし、パスフレーズを入力してから公開鍵と秘密鍵を保存する。
秘密鍵は安全なところに保管し、公開鍵はsvnservが動くマシンの~/.ssh/authorized_keysに追加しておく。
後は、puttyを起動して、Sessionにホスト名を、Connection のAuto-login usernameにユーザ名を、Connection→SSH→Authに秘密鍵のパスを設定してあげて、相手のホスト名を付けてセッションを保存する。
試しに接続してみて、パスフレーズの入力でログインできればおっけ~。
ここまでできたら、pageantを起動する。
pageantは、opensshで言うssh-agent。タスクバーに常駐するので、右クリックメニューからAddKeyを選ぶと、キーを追加できる。
秘密鍵を追加し、パスフレーズを入力する。この作業は、Windowsにログインするたびに行うこと。
後は、TortoiseSVNからsvn+sshでのアクセスができるはず。
ちなみに、svn+ssh://ほげほげ/ の「ほげほげ」の部分が、puttyのセッション名になる。後述するemacsからと共用したい場合は、セッション名=ホスト名にしておくこと。

続いて、emacs(Meadow)+ vc-svn.elでのアクセス方法。
上述の通り、pageantを使うと、パスフレーズを記憶してくれる。
もちろん、cygwinのsshとssh-agentを使っても良いんだけど、ここはpagentを使う方向で行く。
WindowsのDocument And Settingsの下の自分のディレクトリの、Application Data/Subversion/configファイルを編集し、以下を追加する。
[tunnels]
ssh = plink
※ plinkは、先ほどのputty.zipに入っているので、PATHを通して置く。
これで、試しにコマンドラインからローカルコピーのディレクトリで svn updateなどと打った時にパスフレーズを聞かれなければOK。
emacsからvc-svn.elが快適に使えるようになったはずだ。
Windowsの場合は、秘密鍵のファイルが簡単に他人に奪われてしまう危険性があるので、パスフレーズは必ずUNIXのログインパスワードとは違うものにすることと、常にログイン履歴などを確認して、やばいと思ったらすぐに鍵を変える(authorized_keysから削除する)こと。
PPTP on FreeBSDを参考に、pptpのセットアップをしてみた。
まずは、portsからnet/poptopをmake install。
続いて、/usr/local/etc/pptpd.conf.sampleをpptpd.confにコピー。
中身は全てコメントアウトされているので、空のファイルでもかまわない。
続いて、/etc/ppp/ppp.confに以下のエントリーを追加。
pptp:
 set timeout 0
 set log phase
 enable proxy
 accept dns
 set dns 192.168.0.1
 set nbns 192.168.0.1
 enable MSChapV2
 enable mppe
 disable deflate pred1
 deny deflate pred1
 set ifaddr 192.168.0.1 192.168.0.201-192.168.0.210 255.255.255.0
 set server /var/tmp/pptp "" 0177
set ifaddrで、pptpサーバのIPアドレス(ここでは192.168.0.1)と、pptpクライアントに割り当てるIPアドレス(192.168.0.201~192.168.0.210)を記述する。その後はnetmaskらしいんだけど、効いてないみたい。pppだから関係ないのかな。
続いて、/etc/ppp/ppp.secretを記述。
username1 password1
username2 password2
みたいな感じ。chmod 600しておくけど、パスワードをそのまま書くのが気持ち悪いな。人によっては、one time password を生成するようにしている人もいるみたい。
後は、/usr/local/etc/rc.d/pptpd.sh.sample をpptpd.shにコピーして、/usr/local/etc/rc.d/pptpd.sh startでpptpdが起動する。
Windowsから新しい接続でVPNの設定をしてあげると、pptpでの接続ができる。
このままだと、Windowsの名前の解決ができないので、pptpdサーバで動いているsambaで、Wins サーバをさせてやることにする。
/usr/local/etc/smb.confの以下を変更。
domain master = yes
local master = yes
preferred master = yes
os level = 65
domain logons = yes

wins support = yes

dns proxy = yes
domain master = yesと、domain logons = yesは必要ないかも知れない。
dns proxy = yesは、余計なトラフィックを抑えるためにもnoを推奨とか書いてあるのだけれど、これがないと名前解決がうまくいかなかった。
(うちの場合は、Windowsマシンはdhcpを使って固定IPを割り当て、さらにdnsに登録してある)
いろいろなpptpのことを書いてあるサイトを見ても、dns proxyなんて書いてないので、nmbdが起動してからしばらく待ってやれば、dns proxyはいらないのかも知れない。と言うか、Windowsネットワークは未だに良くわからないよ・・・。
これで、外出先からプロバイダに繋いで、そこからpptpを使うことで自宅内のWindowsネットワークにアクセスできるようになった。

一応、ネットワークの構成を説明しておくと・・・
Pptp.jpg
FreeBSD-users-jpメーリングリストで、portauditと言うのを使うと、portsのSecurity Advisoryにあたる情報を教えてくれるようになるらしい。
と、言うわけで、security/portauditをインストールしてみた。
早速、
# /usr/local/sbin/portaudit -Fda
なんて実行してみたら、9つの問題が報告された。
むむむ・・・。
問題が報告されたportsをportupgradeするが、ja-sambaとsubversionのみ残る。
URLも表示されるので、そこを見ると何が問題なのかを教えてくれる。sambaの方は、swatとsmb.confの解釈に問題があるらしいけど、うちの使い方では問題ないみたい。
subversionの方は、mod_dav_svnの問題らしいので、うちの使い方だと微妙に問題があるようだ。

ちなみに、periodic.confで、daily_status_security_portaudit_enable=NOを設定しなければ、periodicで毎日報告してくれそうな雰囲気。
portupgradeでmod_php4をアップグレードしたら、pukiwikiが動かなくなりました。
どうして~?と思ったら、php4のportが、なんか別れたみたい。
/usr/ports/lang/php4/Makefileを読んでもわけがわからなくて、どうもモジュール毎にパッケージがわかれたらしいってことくらい・・・。
結局、/usr/ports/lang/php4-extensionsをインストールしたら、最初のmake時にモジュールの一覧を聞かれて、これに答えたら入ったような感じ・・・。

まあ、/usr/ports/UPDATINGに書いてあったわけですが・・・。
2004年7月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

このアーカイブについて

このページには、2004年7月に書かれたブログ記事が新しい順に公開されています。

前のアーカイブは2004年6月です。

次のアーカイブは2004年8月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 6.1.1