satoshiabe.jp : LAMP - Linux + Apache + MySQL + PHP
HOME > DOCUMENTS > GNU/Linux > LAMP - Linux + Apache + MySQL + PHP
まえがき
ここは、以前 Red Hat Linux 7.3 で LAMP (Linux + Apache HTTP Server + MySQL + PHP ) の環境を構築したときのメモを掘り起こしたページ。 すべてソースパッケージからインストールしている。
Apache HTTP Server の設定
既に Apache HTTP Server が RPM パッケージからインストールされている場合、削除して、最新のソースファイルをインストールする。
既に稼動しているのなら停止する。
# /etc/rc.d/init.d/httpd stop
パッケージをアンインストールする。
# rpm -e httpd
Apache の Web サイトから、最新のソースファイルをダウンロードする。
% wget http://sunsite.tus.ac.jp/pub/apache/httpd/httpd-2.2.0.tar.gz
Apache HTTP Server をインストールする。
% mv httpd-2.2.0.tar.gz /usr/local/src % cd /usr/local/src % tar zxvf httpd-2.2.0.tar.gz % cd httpd-2.2.2 % ./configure --enable-so ### SSL を使用するなら % ./configure --enable-so --enable-ssl ### WebDAV を使用するなら % ./configure --enable-so --enable-ssl --enable-dav=yes ### 有効なオプションについては configure ファイルに記載されている % make % su # make install
とりあえず httpd.conf の ServerName ディレクティブのみ修正する。
httpd.apache.org core - Apache HTTP サーバ
# vi /usr/local/apache2/conf/httpd.conf ### 97 行目あたり ServerName www.example.com
httpd を起動する。
# /usr/local/apache2/bin/apachectl start
Web ページが表示されているか確認する。
ps コマンドを実行しプロセスが起動されいてることも確認しておくこと。
http://www.example.com/
ここでは、自ホストの FQDN を www.example.com とし、正引きで名前解決できることを想定している。 DNS を使用していないネットワークの場合、/etc/hosts に情報を記述すること。
MySQL の設定
パッケージをアンインストールする。
# rpm -e mysql
ここ MySQL AB :: MySQL 5.0 Downloads からソースパッケージをダウンロードする。 事前準備をしつつ、MySQL をインストールする。
% mv mysql-5.0.17.tar.gz /usr/local/src % cd /usr/local/src % tar xzvf mysql-5.0.17.tar.gz % cd mysql-5.0.17 % su # groupadd mysql # useradd -g mysql mysql # passwd mysql New password: Retype new password: # ./configure \ --prefix=/usr/local/mysql \ --with-charset=ujis \ --with-extra-charsets=all \ --with-mysqld-user=mysql # make # make install
初期データを生成する。
# ./scripts/mysql_install_db
chown コマンドと chgrp コマンドを実行する。
# chown -R root /usr/local/mysql # chown -R mysql /usr/local/mysql/var # chgrp -R mysql /usr/local/mysql
MySQL を起動する。
# /usr/local/mysql/bin/mysqld_safe &
MySQL サーバに接続する。
# /usr/local/mysql/bin/mysql -u root -p Enter password:
root のパスワードを new_passwd の部分に指定して実行する。
mysql> SET PASSWORD = password('new_passwd');
匿名ユーザを削除する。
mysql> DELETE FROM mysql.user WHERE user='';
OS を起動する際、MySQL のサービスを自動的に起動させたい場合の設定。
# cp /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysql # /sbin/chkconfig mysql on
PHP の設定
PHP もアンインストールする。
# rpm -e php
ここ PHP: Downloads からソースパッケージをダウンロードする。 PHP をインストールする。
% mv xzvf php-5.1.1.tar.gz /usr/local/src % cd /usr/local/src % tar xzvf php-5.1.1.tar.gz % cd php-5.1.1 % ./configure \ --with-mysql=/usr/local/mysql \ --with-gd --with-zlib \ --with-apxs2=/usr/local/apache2/bin/apxs \ --enable-mbstring --enable-mbregex
libxml2 のバージョンが古いため途中でストップしてしまった。 http://xmlsoft.org/sources/ から最新バージョン libxml2-2.6.11.tar.gz をダウンロードしインストールした後、
# wget http://xmlsoft.org/sources/libxml2-2.6.11.tar.gz # mv libxml2-2.6.11.tar.gz /usr/local/src # tar libxml2-2.6.11.tar.gz # cd libxml2-2.6.11 # ./configure # make # make install clean
再び configure から実行する。
# cd /usr/local/src/php-5.1.1 # ./configure \ --with-mysql=/usr/local/mysql \ --with-gd --with-zlib \ --with-apxs2=/usr/local/apache2/bin/apxs \ --enable-mbstring --enable-mbregex # make # make install clean
php.ini をコピーする
# cp /usr/local/src/php-5.1.1/php.ini-dist /usr/local/lib/php.ini
httpd.conf を修正し、AddTtype... を追記する。
httpd.apache.org mod_mime - Apache HTTP サーバ
# vi /usr/local/apache2/conf/httpd.conf AddType application/x-httpd-php .php
php.ini を修正し doc_root と extension_dir を指定する。
# vi /usr/local/lib/php.ini ### 追記する doc_root = /usr/local/apache2/htdocs ### 修正するので extension_dir = "./" ### を extension_dir = "/usr/local/lib/php/extensions" ### に変更する
httpd をリスタートする。
# /usr/local/apache2/bin/apachectl stop # /usr/local/apache2/bin/apachectl start
php の動作をテストするため、以下を記述したファイルを phpinfo.php として DocumentRoot 直下に保存する。
# vi /usr/local/apache2/htdocs/phpinfo.php <?php phpinfo(); ?> :wq
作成したファイルを表示し、PHP の情報が表示されれば OK だ。
http://www.example.com/phpinfo.php
リンク
ONLamp.com (onlampl.com)