- パッケージでお気楽インストール
Plamo についていくパッケージがいい方は、
# installpkg /cdrom/contrib/Database/*.tgz
# installpkg /cdrom/contrib/WWW/*.tgz
# installpkg /cdrom/contrib/Database/Perl5/*.tgz
# installpkg /cdrom/contrib/Database/Sample/*.tgz
します。起動スクリプトも確か設定されると思いましたので、一番お気楽です(笑)
また、PostgreSQL + PHP + Apache と組み合わせた、Plamo用の最新パッケージを、Jun Kuwamura さんが公開してくださっています。http://www.linet.gr.jp/~juk/plamo/
から辿ってください。
いずれもDSO用になっているので、大抵コレで間に合うでしょう。
なお、「PostgreSQLなんか要らない」という方は、/etc/rc.d/rc.local 中の pgsqld をロードする部分をコメントアウトすれば、次回起動以降はPostgreSQLは起動しません。
# vi /etc/rc.d/rc.local
# cat /etc/rc.d/rc.local
...
#if [ -x /usr/local/pgsql/bin/pgsqld ]; then
# echo -n "Starting postgres server "
# /usr/local/pgsql/bin/pgsqld start
# echo "."
#fi
それではいやだ、自分でコンパイルして使いたいという方は、これ以降のコンパイルの仕方をお読みください。環境設定の仕方に関しては、基本的に同じです。ここでは、パッケージで提供されているのと同様、DSOサポート付きでビルドしてみます。
- 入手したアーカイブを/usr/local/srcへ置き、展開する
# cd /usr/local/src
# tar xvfz apache_1.3.28.tar.gz
- 環境設定とメークを行う
# cd apache_1.3.28
# env OPTIM=-O2 ./configure --enable-shared=max --server-gid=apache --with-port=80
# make
# make install
これで、/usr/local/apacheにインストールされるはずです。なお、ポート番号を指定するのは、rootでないユーザ権限でコンパイルしたとき自動的にhttpd.confにport 8080と記述されるので、それの回避のためです。
- 動作環境の設定を行う
昔、1.2.xまでのApacheでは、httpd.conf/access.conf/srm.confの3つの設定ファイルが必要だったのですが、1.3.xではhttpd.confに集約されています。
※どうも厳密には、1.3.4かららしいです
httpd.conf内の詳しい説明は、参考文献や他の先達の皆様のページ等を参照してください。私が書くよりはずっとわかりやすいと思います
:-p
最近は、Apache ドキュメント翻訳プロジェクト(http://cvs.apache.or.jp/docs-project/)の皆様が本家Apache.orgに
Apache 日本語マニュアルを提供くださっています。このような素晴らしいマニュアルをご用意くださっている皆さんに感謝しますm(_ _)m
以下、私がインストール後に直したhttpd.conf内のディレクティブに限定して、記述します。
- DocumentRoot "/home/que/htdocs/"
デフォルトでは、/usr/local/apache/htdocs/になっていますが、僕んちでは、ユーザで入ってページをいじりたいのと、マルチユーザで使いたいので、/home/que/htdocs/
あたりにしています。
- <Directory "/home/que/htdocs">
上の設定を変更したため、デフォルトでは "/usr/local/apache/htdocs" となっているこのディレクティブを変更する必要が発生します。忘れると動きませんので、お気をつけて。
- ScriptAlias /cgi-bin/ "/home/que/cgi-bin/"
ドキュメントルートを僕のホームディレクトリへ移動したということは、当然 cgi-bin も移動します。便利ですもの(^-^)
- <Directory "/home/que/cgi-bin">
これも上で変更をしたために発生する変更です。
- ErrorDocument 404 /missing.html
この行、デフォルトではコメントアウトされていますが、アンコメントしておくと、エラー404(リンクが切れているとき)に出すページを自分で作れます。僕んちのは、こんな感じです。
- DirectoryIndex index.html index.htm
デフォルトでは、index.htmlのみとなっているでしょうが、Windowsなユーザの作るファイル名がまれに拡張子.htmであることがあるので、index.htmを追加してます。また、トップページをcgiで作りたい場面(e.g.データベースを使う等)などで便利なように、index.cgiなどを追加するのもいいでしょうし、トップページでssiを使う時のためにindex.shtmlを追加するのもいいでしょう。PHP
使うなら、index.phtml/index.php3/index.php なんかも追加したほうがいいですね。おうちのマシンなら、プロバイダと違って何でもありです(^-^)b
- AddType application/x-ns-proxy-autoconfig pac
僕んちは、Squid を併用して http/ftp をキャッシュしているので、Netscape Navigator のプロキシ設定を自動的にSquidへ向けるために、Netscape
Scriptを使っているのですが、そのための拡張子を設定しています。これの件は、Squid
のところで書きます。
- 自動起動を設定する
Apache 1.3.xからは、起動用のスクリプトがついてくるので、これを使うのが便利でしょう。/usr/local/apache/bin/apachectl
というものです。これを /etc/rc.d/rc.local に設定するのがいいとおもいます。/etc/rc.d/rc.local
に以下の文を追記します。
if [ -x /usr/local/apache/bin/apachectl ]; then
/usr/local/apache/bin/apachectl start
fi
なお、このスクリプトを使って、ApacheにSIGHUPを送ることなどもできますから、1.2.x時代に比べるとお気楽になったものです
:-)
- 起動してみる
ここまできたら、ためしに起動してみましょう。
# /usr/local/apache/bin/apachectl start
これで何も言われなければ、動いているはずです。例によって、動いているかを確かめるには、ひとまず下記のようにします。
# ps ax | grep httpd
/usr/local/apache/bin/httpd が 5行出てくれば、オッケーです。とにかく動いています。でも、ちゃんと接続できるかどうか、わかりませんね?
もっともシンプルな確認方法は、telnet でポート80を叩いてみることです。以下の手順でやってみましょう。
# telnet localhost 80
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
GET / HTTP/ 1.0 <-- この部分を入力して Enter を2回叩く
HTTP/1.1 200 OK
Date: Fri, 17 Dec 1999 22:19:28 GMT
Server: Apache/1.3.9 (Unix)
Last-Modified: Wed, 20 May 1998 14:59:42 GMT
ETag: "xxxxx-xxx-xxxxxxxx"
Accept-Ranges: bytes
Content-Length: 1622
Connection: close
Content-Type: text/html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<TITLE>Test Page for Apache Installation on Web Site</TITLE>
....
Connection closed by foreign host.
ってな具合になれば、ブラウザでもきっと開けます。
- ブラウザで開いてみる
私は普段、Plamo Linux 上では Lynx というテキストベースのブラウザを使っているので、もっとお手軽にテストします。まあ、どうせ
Windows があるんだから、Netscape でつなげば良さげなものですが、Windows を使って localhost からの接続は実現できませんのでね。まぁ、お好きなものでどうぞ。