Saito's Linux Webpage

Apache + PHP のインストール手順

  (凡例)
   # ・・・ root でログイン時のコマンドプロンプトを表します。
   $ ・・・ root 以外 でログイン時のコマンドプロンプトを表します。

  (対象OS)
    Red Hat Linux 8.0

  (参考文献)
    改訂第3版 PC UNIXユーザのための PostgreSQL完全攻略ガイド (石井達夫 著/技術評論社)
    PHP4でカンタンWebDB構築ガイド (屋比久友秀 著/秀和システム)


  01. ApacheとPHPの最新パッケージを入手する。
  02. インストール済みrpmパッケージのアンインストール
  03. Apacheのインストール
  04. PHPのインストール
  05. PHP設定ファイルの編集
  06. Apache設定ファイルの編集
  07. 手動で、Apacheの起動・停止を確認する。
  08. Apacheの自動起動設定
  09. Apache + PHPの動作確認


ApacheとPHPの最新パッケージを入手する。
Apacheパッケージのダウンロード
Apacheパッケージは、ここから最新のもの(ファイル名: apache_1.3.xx.tar.gz)をダウンロードしてください。 (日本Apacheユーザ会のホームページからも辿っていくことができます。)

Apacheには現在、バージョン1.3系と2.0系の2通り存在しますが、ここでは1.3系のほうをインストールすることにします。

私が自分のPCにインストールした当時は、バージョン1.3.28が最新だったため、 ここではApacheパッケージとして「apache_1.3.28.tar.gz」を使用します。
PHPパッケージのダウンロード
PHPパッケージは、ここから最新のもの(ファイル名: php-4.x.x.tar.gz)をダウンロードしてください。 (日本PHPユーザ会のホームページからも辿っていくことができます。)

私が自分のPCにインストールした当時は、バージョン4.3.6が最新だったため、 ここではPHPパッケージとして「php-4.3.6.tar.gz」を使用します。
インストール済みrpmパッケージのアンインストール
すでにApache,PHPのrpmパッケージがインストール済みの場合、それが邪魔になってソースからのコンパイルが上手くいかない事があります。 その場合はrpmパッケージを削除してください。

まず root でログインします。

Apacheのアンインストール (rpmパッケージ)
インストール済みrpmパッケージの検索を行います。
   # rpm -qa | grep apache

   何も出力されなければ、インストールされていません。パッケージ名などが出力された場合は、以下の方法でアンインストールして下さい。

rpmパッケージのアンインストール
   # rpm -e apache

   上記コマンドを実行した場合、rpmパッケージの依存関係のためにアンインストールできない場合があります。
   このような場合は、依存関係でチェックされたパッケージをすべてアンインストールした後で、Apacheをアンインストールしてください。
PHPのアンインストール (rpmパッケージ)
インストール済みrpmパッケージの検索を行います。
   # rpm -qa | grep php

   何も出力されなければ、インストールされていません。パッケージ名などが出力された場合は、以下の方法でアンインストールして下さい。

rpmパッケージのアンインストール
   # rpm -e php

   上記コマンドを実行した場合、rpmパッケージの依存関係のためにアンインストールできない場合があります。
   このような場合は、依存関係でチェックされたパッケージをすべてアンインストールした後で、PHPをアンインストールしてください。
Apacheのインストール
Apacheパッケージファイル 「apache_1.3.28.tar.gz」 を /usr/local/src 下へコピーし、下記コマンドを実行してください。
   # cd /usr/local/src
   # tar xfz apache_1.3.28.tar.gz
   # cd apache_1.3.28
   # env OPTIM="-O2" ./configure --enable-module=so
   # make
   # make install

   ※ OPTIM="-O2" の太字部分はともに0(ゼロ)ではなく、英大文字のO(オー)です。
PHPのインストール
PHPパッケージファイル 「php-4.3.6.tar.gz」 を /usr/local/src 下へコピーし、下記コマンドを実行してください。
   # cd /usr/local/src
   # tar xfz php-4.3.6.tar.gz
   # cd php-4.3.6
   # ./configure --enable-zend-multibyte --enable-mbstring --enable-mbstr-enc-trans \
   > --with-apxs=/usr/local/apache/bin/apxs --with-pgsql --with-mysql=/usr/local/mysql
   # make
   # make install
PHP設定ファイルの編集
以下のコマンドを実行して、/usr/local/lib/php.ini ファイルを作成してください。
   # cd /usr/local/src/php-4.3.6
   # cp php.ini-dist /usr/local/lib/php.ini

テキストエディタで、下記の通り /usr/local/lib/php.ini のパラメータを修正してください。
修正前 修正後
output_buffering = Off output_buffering = On
;output_handler = output_handler = mb_output_handler
register_globals = Off register_globals = On 修正しない (注)
;mbstring.internal_encoding = EUC-JP mbstring.internal_encoding = EUC-JP
;mbstring.http_input = auto mbstring.http_input = EUC-JP
;mbstring.http_output = SJIS mbstring.http_output = EUC-JP
;mbstring.detect_order = auto mbstring.detect_order = auto
;mbstring.substitute_character = none mbstring.substitute_character = auto

(注) セキュリティの観点上、register_globalsパラメータはOffにして運用してください。

参考までに、私のPCの設定ファイルを掲載しておきます。ここをクリックしてください。
Apache設定ファイルの編集
テキストエディタで、下記の通り /usr/local/apache/conf/httpd.conf のパラメータを修正してください。
修正前 修正後
#ServerName サーバ名 ServerName サーバ名
DirectoryIndex index.html DirectoryIndex index.html index.htm index.php
- <Files ~ "\.ini$">
  Deny from all
</Files>
- AddType application/x-httpd-php .php
- AddType application/x-httpd-php-source .phps
#AddType text/html .shtml AddType text/html .shtml
#AddHandler server-parsed .shtml AddHandler server-parsed .shtml

参考までに、私のPCの設定ファイルを掲載しておきます。ここをクリックしてください。
手動で、Apacheの起動・停止を確認する。
Apacheの起動
   # /usr/local/apache/bin/apachectl start

   正常に起動すると、以下のメッセージが表示されます。
      /usr/local/apache/bin/apachectl start: httpd started

Apacheの停止
   # /usr/local/apache/bin/apachectl stop

   正常に停止すると、以下のメッセージが表示されます。
      /usr/local/apache/bin/apachectl stop: httpd stopped
Apacheの自動起動設定
以下のコマンドを投入して、自動起動の設定を行ってください。
   # cd /etc/rc.d/init.d
   # cp /usr/local/apache/bin/apachectl ./httpd
   # chmod 755 httpd
   # for I in 0 1 2 6; do
   > ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc$I.d/K39httpd
   > done
   # for I in 3 4 5; do
   > ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc$I.d/S71httpd
   > done

Linuxマシンを再起動してください。
   # /sbin/shutdown -r now
Apache + PHPの動作確認
ここをクリックして phpinfo.txt ファイルをダウンロードしてください。

ダウンロードした phpinfo.txt ファイルを /usr/local/apache/htdocs 下へコピーしてください。
   # cp phpinfo.txt /usr/local/apache/htdocs/phpinfo.php

LAN上の別のPCからWebブラウザを立ち上げ、以下のURLを指定してください。
   http://xxx.xxx.xxx.xxx/phpinfo.php   (xxx.xxx.xxx.xxx はWebサーバのIPアドレスです。)

   クリック!! <== このような画面が表示されたら、ApacheとPHPは正常に動作しています。

HOME INDEX