Webサーバは、WWW(World Wide Web)サーバとも言い、世界中に情報を発信するための、サーバです。
ここでは、Apacheを使ってWebサーバを構築するための方法について説明します。
apacheは、代表的(しかもフリー)なWWWサーバであり、広く利用されています。
unix# cd /usr/local/src/ unix# zcat ../pub/apache_1.3.6.tar.gz | tar -xvf - unix# cd apache_1.3.6 unix# ./configure unix# make unix# ps aux | grep httpd unix# kill httpdのプロセスID unix# make install unix# cd /usr/local/apache/conf unix# vi httpd.conf unix# cd /usr/local/apache/ unix# mv htdocs htm unix# mv cgi-bin cgi unix# ln -s /usr/local/apache/bin/httpd /usr/local/sbin/. unix# ln -s /usr/local/apache/bin/apachectl /usr/local/sbin/. unix# apachectl start unix# cd /etc/rc.d unix# vi rc.local |
apache 1.3.6 は、起動・終了などの制御をするためのコマンドが提供されています。
名前
apachectl option
機能
Apacheの起動、終了などの制御をします。
オプション
start - Apacheを起動する
stop - Apacheを終了(シャットダウン)する
restart - Apacheを再起動する
fullstatus - Apacheのすべての状況を表示する
status - Apacheの状況を表示する
configtest - Apacheの設定ファイルのチェックをする
help - Apacheのヘルプメッセージを表示する
|
apache 1.3.3 のディレクトリ構成は以下のようになります。
/usr/local/apache/bin/ 実行プログラム格納用 /usr/local/apache/man/ マニュアル格納用 /usr/local/apache/conf/ コンフィグファイル格納用 /usr/local/apache/cgi/ CGI格納用(cgi-bin) /usr/local/apache/htm/ HTML格納用(htdocs) /usr/local/apache/icons/ システムアイコン格納用 /usr/local/apache/log/ アクセスログ格納用 |
| httpd.conf | WWWサーバの設定ファイル |
|---|---|
| ServerType standalone | httpdの起動方法(デーモンとして起動) |
| Port 80 | httpdの使用するポート番号 |
| User wmaster | httpdを起動するユーザ名 |
| Group env | httpdを起動するグループ名 |
| ServerAdmin info@ash.jp | httpdの管理者のメールアドレス |
| ServerRoot "/usr/local/apache/" | apacheのインストールディレクトリ |
| ServerName ash.jp | WWWサーバ名 |
|
<Directory "/usr/local/apache/htm"> Options Indexes FollowSymLinks AllowOverride None </Directory> |
HTML格納ディレクトリのアクセス権 ディレクトリ一覧は可, シンボリックリンクを許可 .htaccessの使用不可 |
|
<Directory "/usr/local/apache/cgi"> Options FollowSymLinks ExecCGI AllowOverride None </Directory> |
CGI格納ディレクトリのアクセス権 ディレクトリ一覧は不可, シンボリックリンクを許可, CGI実行可 .htaccessの使用不可 |
| DocumentRoot "/usr/local/apache/htm" | HTML, CGI格納ディレクトリ |
| DirectoryIndex index.html index.htm index.cgi | デフォルトインデックスファイル |
| UserDir public_html | 各ユーザのHTML格納ディレクトリ |
| Alias /icons/ "/usr/local/apache/icons/" | システムアイコンのURLの別名 |
| ScriptAlias /cgi/ "/usr/local/apache/cgi/" | CGIのURLの別名 |
| AddType application/x-httpd-cgi .cgi | CGIのタイプを追加 |
| AddHandler cgi-script .cgi | CGIを許可 |
| AddType text/x-server-parsed-html .shtml | SSIのタイプを追加 |
| AddType text/html .shtml | SSIのタイプを追加 |
| AddHandler server-parsed .shtml | SSIを許可 |
| /etc/rc.d/rc.local | 起動ファイル |
|
# www server start /usr/local/sbin/apachectl start | Linux起動時にhttpdを起動 |
unix# tail -100 /usr/local/apache/log/access.log #アクセスログの表示 unix# tail -100 /usr/local/apache/log/error.log #エラーログの表示 |
unix# ps aux | grep httpd |
Apacheでは、apxsコマンドを使って、インストールディレクトリ情報を問い合わせることができます。
TurboLinuxでapxsコマンドがない場合は、Apache develパッケージをインストールする必要があります。
形式: apxs -q 問合せディレクトリ名 使用例: unix# echo `apxs -q PREFIX` /usr/local unix# echo `apxs -q SBINDIR` /usr/local/sbin unix# echo `apxs -q SYSCONFDIR` /usr/local/etc/apache unix# echo `apxs -q LIBEXECDIR` /usr/local/libexec/apache unix# echo `apxs -q INCLUDEDIR` /usr/local/include/apache |
Apacheの組み込みモジュールは、httpd の -l オプションを使って、問い合わせることができます。
unix# /usr/local/sbin/httpd -l |
DSO機能が有効かどうかは、mod_soが組み込まれてるかどうかでわかります。
unix# /usr/local/sbin/httpd -l mod_so.c |
もし、組み込まれていない場合は、以下のオプションを使って、Apacheをメイクする必要があります。
unix# ./configure --prefix=/usr/local --enable-rule=SHARED_CORE --enable-module=so |