LAMP インストールの総ざらえ

晴れ。天気はめちゃめちゃいいけれど、昨夜から寒の戻りだそうで、空気は冷たいね。

さて、4ヶ月Linuxがらみでいろいろと挑戦して、やっと満足できるLAMP構成を作ることができたので、今までのおさらいを兼ねて記録しておく。ソースからコンパイルしてがんばろうとしている初心者さんのお役に立てればいいな。(`・ω・´)シャキーン

・モデル環境
CPU:Pentium 4 2.6GHz、Memory:512Mbytes、HDD 120GBytes×2、DVDディスクドライブ
・目的
Linux OS上でApache、MySQL、PHPをインストールして連携動作させる。
Linux OSはSUSE linux 9.2を使う。

1.SUSE Linuxをインストールする。
SUSE Linux 9.2はNovell JapanのFTPサーバからダウンロードしてくる。
ftp://ftp.novell.co.jp/pub/suse/suse/i386/9.2/iso/
DVD ドライブがある人は、SUSE-Linux-9.2-FTP-DVD.isoをとってくればいいし、CD-ROMドライブしか持っていない人はSUSE- Linux-9.2-mini-installation.isoをとってきて、足りない分はネットワークインストールする。

SUSE Linuxが問題なくインストールできたと仮定して、以下Apacheなどのインストールについてメモしてゆく。
一連のインストール作業で分かったのは、ソースからインストールする時は、あらかじめチェックしておかなきゃならないオプションコードがたくさんあった、ということだ。

言うまでもないが、サーバアプリケーション関係のインストール作業は、必ずroot権限で行う。


2.ソースファイルをコンパイルするための各種ツールをインストールする。
通常Linuxをインストールすると開発環境もごっそりインストール(ついでに言えば、WWWサーバなんかもまとめてインストールされてしまう)されているものだが、SUSEはインストールされていない。
そこで下準備が必要だ。

1)開発環境を整える
YaSTを起動する。
"ソフトウェアのインストール/削除"を選択する。
"フィルタ"をパッケージグループに変更する。
"開発"の中の"プログラム言語"をクリックし、"CとC++"をクリックする。
とりあえず全部選択(笑)して、了解をクリック。
で、パッケージをインストールする。(DVDメディアを要求されます)

2)libtoolとautoconfをインストールする
YaSTを起動する。
"ソフトウェアのインストール/削除"を選択する。
検索の窓に"libtool"とインプットしてみる。と、インストールされていることが判明。 同じく"autoconf"とインプットすると、インストールされていないことが判明。

autoconfをダウンロードする。
novell のサイトからRPMファイルを探してくる。
探しものをするときは、ftp://ftp.novell.co.jp/pub/suse/suse/ に行け!

ftp://ftp.novell.co.jp/pub/suse/suse/i386/9.2/suse/i586/
の中から、autoconfをダウンロードする。ダウンロードが終わったら自動的にYaSTが立ち上がる。
インストールはYaSTに任せてしまう。


3.Apacheをインストールする。
Apacheは下記のURLからダウンロードしてくる。
http://www.apache.org

ファイルをダウンロードすると、だいたいrootディレクトリに保存される。
以降の説明もダウンロードされたファイルは基本的にrootディレクトリにあることを前提で進める。

1)ターミナル端末を起動する。

2)cd httpd-2.x.xx とインプットしてディレクトリを移動する。
lsコマンドで中身を見ると、いろいろなファイルがあることが分かる。

3)configureコマンドでMakefileを生成する。
./configure --enable-so
とインプットして様子を見る。( ‥)ノ―――――――◎゛
問題がなければプロンプトが出るはず。

※通常Apacheのインストール解説ページだと ./configure としか記載されていない。"--enable-so"はDSO対応でコンパイルせよというオプション。DSOを使うことでApacheを再コンパイルする ことなくモジュールによる機能追加が可能になる。あとでPHPをモジュールとして組み込むわけなので、ここでパラメータをつけてコンパイルしておかないと 泣きを見るようだ。

4)makeコマンドでソースコードをコンパイルする
make
とインプットして様子を見る。
端末上をスゴイ勢いでコマンドが走ってゆくが静かに見守る。
問題がなければプロンプトが出るはず。

5)インストールコマンドを打つ。
make install
とインプットして静かに見守る。
問題がなければプロンプトが出るはず。

6)不要になったファイルを削除する。
make clean
とインプットして不要となった中間生成ファイルなどを削除する。
あとtar.gzファイル、解凍したフォルダも削除してOK!

7)Apache2.0を起動する。
/usr/local/apache2/bin/apachectl start
とインプットする。
その後ブラウザを立ち上げて、URLにlocalhostと入力してApacheが反応を返してきたら成功。

8)Apache2.0を自動起動するために
ここの記事を参考にスクリプトを修正する。
http://www.doblog.com/weblog/myblog/31798/923013#923013

こうしておけばシステム起動と同時にApacheも立ち上がる。


4.PHPをインストールする。
PHPをインストールする前にSUSE Linuxに対していくつかのファイルをインストールしなければならない。僕はここで相当はまったが、configureの最中に出てくる警告文をもっと良く読んでおけば、もっと早く解決できただろう。

1)Novellサイトへ行って次のプログラムをダウンロード&インストールする
ftp://ftp.novell.co.jp/pub/suse/suse/i386/9.2/suse/i586/
・bison-1.875-53.2.i586.rpm
・flex-2.5.4a-295.i586.rpm
・libxml2-2.6.12-3.4.i586.rpm
・readline-devel-5.0-1.2.i586.rpm
・zlib-devel-1.2.1-74.i586.rpm
・libxml2-devel-2.6.12-3.4.i586.rpm

上記の順番でインストールしておけば依存関係のトラブルも回避できる。

2)PHPをダウンロードしてくる。
http://www.php.net/downloads.php
最新版はPHP5.X。tar.gz版を取ってくればよいだろう。

3)PHPを解凍する。GUI上から解凍すれば簡単。

4)ターミナル端末を起動する。
ターミナル端末を起動して、PHPが解凍されたディレクトリに移動する。
まず下記のオプションをつけてconfigureする。

./configure --enable-mbstring \
--enable-mbregex \
--enable-zend-multibyte \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysql

最後の行をインプット後、Enterキーを押すとconfigureスクリプトが走る。
終了したら、次は
make

makeが終わったら、次に
make install

make installが終わったら、PHPの設定ファイルをコピーする。
cp php.ini-dist /usr/local/lib/php.ini

5)不要になったファイルを削除する。
make clean
とインプットして不要となった中間生成ファイルなどを削除する。
あとtar.gzファイル、解凍したフォルダも削除してOK!


5.ApacheとPHPの設定ファイルを変更する
1)Apacheの設定ファイルを変更する。
変更するのは、/usr/local/apache2/conf/httpd.conf だ。
変更箇所は次の通り。

DirectoryIndex index.html index.html.var

DirectoryIndex index.html index.html.var index.php

AddTypeに次の1行を追加する。
AddType Application/x-httpd-php .phpを

2)PHPの設定ファイルを変更する。
変更するのは/usr/local/lib/php.ini だ。
変更箇所は次の通り。

;mbstring.Language = Japanese

mbstring.Language = Japanese

;mbstring.internal_encoding = EUC-JP

mbstring.internal_encoding = EUC-JP

;mbstring.http_input = auto

mbstring.http_input = auto

;mbstring.http_output = SJIS

mbstring.http_output = SJIS

;mbstring.encoding_transLation = Off

mbstring.encoding_transLation = On

;mbstring.substitute_character = none;

mbstring.substitute_character = none;

上記の変更が終わったらphp.iniを保存して、Apacheを再起動する。


6.動作確認
一般的なPHPの動作確認方法を使って、インストール結果を確認する。
/usr/local/apache2/htdocs に次の内容のファイルを設置。



ファイル名はinfo.php

ブラウザを立ち上げてhttp://localhost/info.phpにアクセスする。
PHPからサーバ情報が返ってきたら成功だ! (^^)v


7.MySQLをインストールする。
MySQLはバイナリファイルからのインストールを奨励されているので、RPMをダウンロードしてお手軽にインストールしてしまう。

1)MySQLサイトに行って必要なファイルをDLする
http://dev.mysql.com/downloads/

ここでMySQL4.1のDLリンクを辿り、Linux x86 RPMをDLする。取ってきたファイルは次の通り。

・Server
・Client programs
・Libraries and header files
・Dynamic client libraries
・Embedded server
・Dynamic client libraries(includinf 3.23.x libraries)

ダウンロードのたびにYaSTが立ち上がってインストール作業をしてくれるので、今回はそれに任せてしまう。

2)サーバが起動しているかどうか確かめるには、ターミナルプログラムを立ち上げて、次のコマンドを打ってみればよい。

mysql

ちゃんと動いていれば何らかのメッセージを返してくるはずだ。


細かい設定はほかの記事を参照のこと。

以上

0 件のコメント:

コメントを投稿