Red Hat Linux 9にApacheをインストールする
Apache 2.0.63(httpd-2.0.63.tar.gz)をRed Hat Linux 9にソースからコンパイルしてインストールします。
Apacheのダウンロード
httpd-2.0.63.tar.gzをダウンロードします。
http://ftp.yz.yamagata-u.ac.jp/pub/network/apache/httpd/httpd-2.0.63.tar.gz
Apacheのインストール
ダウンロードした httpd-2.0.63.tar.gz を/usr/local/src にコピーします。
# cp httpd-2.0.63.tar.gz /usr/local/src/.
httpd-2.0.63.tar.gz を展開します。
# cd /usr/local/src
# tar zxvf httpd-2.0.63.tar.gz
展開したディレクトリに移動します。
# cd httpd-2.0.63
ソースからコンパイルします。
インストール先は /usr/local/apache2/ とします。
configureスクリプトを実行します。
# ./configure
コンパイルとインストールを実行します。
# make
# make install
Apacheの起動
Apacheを起動します。
# /usr/local/apache2/bin/apachectl start
Apacheの終了
Apacheを終了させます。
# /usr/local/apache2/bin/apachectl stop
Apacheの起動確認
Apacheの起動確認をします。
Apacheを起動します。
# /usr/local/apache2/bin/apachectl start
WebブラウザでApacheをインストールしたマシンのアドレスにアクセスし、テストページの表示を確認します。
http://インストールしたマシンのIPアドレス/
Apache自動起動
Apacheが自動起動できるように設定します。
/etc/rc.d/rc.localに /usr/local/apache2/bin/apachectl start を追加します。
# vi /etc/rc.d/rc.local # cat /etc/rc.d/rc.local #!/bin/sh # # This script will be executed *after* all the other init scripts. # You can put your own initialization stuff in here if you don't # want to do the full Sys V style init stuff. touch /var/lock/subsys/local /usr/local/apache2/bin/apachectl start #
C言語によるHello World!の表示
CGIをC言語でプログラミングしWebブラウザに Hello World! と表示させます。
・Hello World! のソース(C言語)を helloworld.c として、 /usr/local/apache2/cgi-bin/ に作成します。
# cd /usr/local/apache2/cgi-bin/
# vi helloworld.c
#includeint main(void){ printf("Content-type: text/plain\n\n"); printf("Hello World!"); return 0; }
・helloworld.cをコンパイルします。
# gcc -o helloworld.cgi helloworld.c
# cd /usr/local/apache2/cgi-bin/ # vi helloworld.c # ls helloworld.c # gcc -o helloworld.cgi helloworld.c # ls helloworld.c helloworld.cgi # ls -l -rw-r--r-- 1 root root 128 9月 7 21:21 helloworld.c -rwxr-xr-x 1 root root 4715 9月 7 21:22 helloworld.cgi #
・ブラウザでhelloworld.cgiを実行し、 Hello World! と表示されることを確認します。
2010.09.08
Apacheの削除
ソースコードからインストールしたApacheを削除する場合は、インストールしたディレクトリをすべて削除します。
インストール先が /usr/local/apache2/ の場合は以下のようにします。
# rm -rf /usr/local/apache2/
http://<サーバのアドレス>/cgi-bin/helloworld.cgi
configureのオプション
オプション |
内容
デフォルト
|
---|---|
--help |
ヘルプを表示する
|
--no-create |
makeファイルを生成しない
|
--quiet |
各種チェック時のメッセージを表示しない
|
--srcdir=DIR |
ソースファイルの場所を指定する
|
--version |
バージョンを表示する
|
--prefix=PREFIX |
PREFIX に指定されたディレクトリをapacheのルートディレクトリに指定する
/usr/local/apache2/
|
--exec-prefix=EPREFIX |
EPREFIXで指定されたディレクトリにhttpdをインストールする
/usr/local/apache2/bin/
|
--datadir=DIR |
DIRで指定したディレクトリにdataディレクトリ(build,cgi-bin,error,htdocs,iconds,manual)をインストールする
/usr/local/apache2/各種ディレクトリ/
|
-includedir=DIR |
DIRで指定したディレクトリに各種ヘッダファイル をインストールする
/usr/local/apache2/include/
|
--libexecdir=DIR |
DIRで指定したディレクトリにmodulesディレクトリをインストールする
/usr/local/apache2/modules/
|
--localstatedir=DIR |
DIRで指定したディレクトリにlogsディレクトリをインストールする
/usr/local/apache2/logs/
|
--mandir=DIR |
DIRで指定したディレクトリにmanをインストールする
/usr/local/apache2/man/
|
--sbindir=DIR |
DIRで指定したディレクトリにsbinディレクトリをインストールする
/usr/local/apache2/sbin/
|
--sysconfdir=DIR |
DIRで指定したディレクトリに設定ファイルをインストールする
/usr/local/apache2/conf/
|
--enable-module=NAME |
NAMEで指定したモジュールを有効にする
|
--disable-module=NAME |
NAMEで指定したモジュールを無効にする
|
makeターゲット
ターゲット |
内容
|
---|---|
all |
実行ファイルを生成する
(ターゲット指定なしと同じ)
|
clean |
configureで生成した一時ファイルを削除する
|
instal |
インストールする
|
depend |
ソースファイルとヘッダファイルの依存関係を記述したファイル(.deps)を生成する
|
distclean |
配布されたファイル以外(Makefileも)を消去する
|
Apache THHP Serverダウンロードサイト
http://httpd.apache.org/download.cgi
追加 2010.09.08
2010.08.14