Memo for Woody & Web Server

WebDAV 使用、httpd.conf の設定, suExec 無効化、PHP4 関連、tDiary を Virtual Host で利用する場合など、Debian GNU/Linux 3.0 (Woody) とウェブサーバー関連のメモ。

Apache + SSL

apache-ssl パッケージを利用する方法と、apache パッケージに libapache-mod-ssl パッケージを利用する方法の2種類がある。一般的なのは後者(と思う)。

mod-ssl の認証作成には mod-ssl-makecert コマンドを使用する。

デフォルトの httpd.conf に関して

apache の設定に関して、セキュリティを考えると、/etc/apache/httpd.conf で

ServerSignature Off
ServerTokens Product Only

に変更すべきだと思われる。

またブラウザによって日本語が文字化けすることがある。これに関しては

AddDefaultCharset on

を off に設定する。 

WebDAV

apt-get install libapache-mod-dav と /etc/apache/httpd.conf の設定で WebDAV は利用できるが、日本語ファイル名の処理のための mod_encoding だけは手動でコンパイル&インストールを行わなければならない。

  1. apt-get install apache-dev
  2. WebDAV Resources JP ウェブサイトから mod_encoding 20021209.tar.gz をダウンロードする。
  3. mod_encoding 20021209.tar.gz を解凍して README.JP に書かれている通りコンパイル&インストールする。

apache パッケージのアップデート時には再コンパイルが必要となる場合がある。 

PHP4

apt-get install php4 でインストールされる。Official Package は最新版からは少し古め。最新版に近いパッケージは、

deb http://debian.moolfreet.com ./

にあるが、ここには他のサーバー系パッケージの新しいバージョンも数多くあるので、PHP4 だけを利用する場合には注意が必要。

GD2 を利用する場合には php4-gd2 パッケージを、PostgreSQL を利用する場合は php4-pgsql パッケージをインストールする。

PHP4 のモジュールを追加した場合や PHP に関する設定 (httpd.conf) を変更した場合には、apache は reload (kill -HUP) ではなく、完全な再起動 (/etc/init.d/apache restart) が必要。モジュールや PHP の設定の読み込みが apache の起動時に1回のみ行われるため。

suExec の無効化

Debian の apache はデフォルトではsuExec が有効になる仕様になっている。そのため、他のディストリビューションからの移行では CGI/SSI の実行ができなくなる場合がある。利用ユーザーが各自にウェブサイトをユーザーディレクトリ内に作成している場合には、suExec を有効にしたまま、CGI/SSI が実行できるようにファイル/ディレクトリの実行権限を変更すべきである。

が、そうでない場合や移行に手間がかかるなど suExec を無効にしたい場合には

mv /usr/lib/apache/suexec /usr/lib/apache/suexec.bak

などとして /usr/lib/apache/suexec を利用できないようにすれば良い。

なお suExec が有効になっていても suExec が実際に適用されるのは、

のいずれかの条件が満たされた場合のみである。これ以外の場合には、suExec が有効になっていても、suExec は適用されない。

tDiary のインストール

/etc/apt/sources.list に以下の aptline を追加して、apt-get update; apt-get install tdiary tdiary-plugin tdiary-theme を実行する。

deb http://www.sgtpepper.net/hyspro/deb ./

tDiary のテーマライブラリ (tdiary-theme) は /var/www/tdiary/theme/ 以下にインストールされる。

Debian の apache は suExec 仕様のため、ユーザーホーム (~/public_html など以下)にインストールする場合には、

tdiary-setup default /home/username/public_html/tdiary

などとする。suExec を無効にしていたり、Virtual host を利用している場合には

tdiary-setup symlink /home/username/public_html/tdiary

とする。

 

 

[ Go Linux Memo ]