Linux+Apache+Mysql+PHP の典型的な構成
デバッグ環境: Redhat9.0 Apache1.3.29 Mysql3.23.58 PHP4.3.4
Linux システムのインストールには触れません。実際、これが基本的なスキルです。 , この記事は Redhat に似ていますが、私が提供した方法をマスターしている限り、他の Linux にも適用できるはずです。 Redhat9.0 をインストールするときは、システムのデフォルトの Apache、mysql、php、および関連ソフトウェアをインストールしないように注意してください。すでにインストールされている場合は、rpm -e * を使用して、インストールされているパッケージを削除してください。
1. Mysql3.23.58 をインストールします
実は、Mysql 公式 Web サイトから提供されている rpm パッケージを直接インストールするのもより現実的な方法です。 tar パッケージのリリースでは、これの方が良いと思います。少なくとも rpm パッケージをインストールすると、その後のデバッグ中に mysql ライブラリ ファイルが見つからなくなります。しかし、ここではカスタムインストールの手順について話す必要があります。結局のところ、ネチズンによるカスタムインストールが非常に多くあります。
ソフトウェアの入手先: http://www.mysql.com/downloads/index.html
インストール手順:
tar zxvf mysql-3.23.58.tar.gz
cd mysql-3.23.58
./configure --prefix=/usr/local/mysql --sysconfdir=/etc --localstatedir=/var/lib/mysql
make
make install
#prefix=/usr/local/mysql mysql インストールのターゲットディレクトリ
#sysconfdir=/etc my.ini 設定ファイルへのパス
#localstatedir=/var/lib/mysql データベースストレージへのパス
インストール後、データベースを初期化する必要があります。 もちろん、行う必要はありません。アップグレードする場合はこの手順を実行します。
/usr/local/mysql/bin/mysql_install_db
システムに mysql ユーザーがない場合は、次の手順を実行するのが最善です:
useradd -M -o -r -d /var/lib/mysql -s /bin/bash -c "MySQL Server" -u 27 mysql
それから mysql を起動します
/usr/local/mysql/bin/safe_mysqld &
ok、最初に確認しますmysql は正常に動作します
mysql -uroot mysql
全般 ほとんどの場合、データベースは正常に接続できず、次のようなエラー メッセージが表示されます:
エラー 2002: ソケット '/var/ を介してローカル MySQL サーバーに接続できませんlib/mysql/mysql.sock' (2)
実際、オンラインの人々は、mysqld.sock をリンクできないという全体的な問題を尋ねます。何が起こっているかを理解するには、mysql を参照してください。私のエラー ログは
/var/lib/mysql/* にあります。 err mysql を起動できない理由は、/var/lib/mysql の権限がないためであることがわかります。 mysql サービスへのアクセスを許可します。デフォルトでは、英語の mysql はサービスを開始するために mysql ユーザーを呼び出します。これでサービスを開始できない理由がわかったので、それは簡単です。必要なのは
chown -R mysql:mysql /var/lib/mysql だけです。それでも起動できない場合は、ゆっくりと権限をデバッグしてください。とにかく、起動できない問題は権限にあります。
それでも起動できない場合は、私のより複雑な権限設定を使用してください。とにかく、これを毎回実行しますが、通常は問題ありません。以下を参照してください:
chown -R root /usr/local/mysql
chgrp -R mysql /usr/local/mysql
chown -R root /usr/local/mysql/bin
chgrp -R mysql /usr/local/mysql/bin
chgrp -R mysql /var/lib/ mysql
chmod 777 /var/lib/mysql
chown -R root /var/lib/mysql/mysql
chgrp -R mysql /var/lib/mysql/mysql
chmod 777 /var/lib/mysql/mysql
chown - R root /var /lib/mysql/mysql/*
chgrp -R mysql /var/lib/mysql/mysql/*
chmod 777 /var/lib/mysql/mysql/*
chmod 777 /usr/local/mysql/ lib/mysql/ libmysqlclient.a
上記の手順を完了してから、コンパイル済みディレクトリにスクリプトをコピーします
cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
ntsysv 設定を使用して、mysql が起動されるたびに自動的に実行されるようにします。
これで mysql がインストールされました。次のように mysql サービスを開始できます
/etc/rc.d/init.d/mysqld start
次のステップはより重要です、
ln -s /usr/local /mysql/lib/mysql /usr/lib/mysql
ln -s /usr/local/mysql/include/mysql /usr/include/mysql
他のソフトウェアをコンパイルするときに myslq のライブラリ ファイル パスをカスタマイズすることはできますが、コンパイル時に指定する必要がないように、ライブラリ ファイルをデフォルトの場所にリンクすることをお勧めします。 PHP、Vpopmail などのソフトウェア。mysql のライブラリ ファイル アドレス。
2. Apache1.3.29をインストールします。私は Apache 2.0 のインストールを選択しませんでした。なぜなら、インターネット上で公開されている最新の Apache の脆弱性は基本的に 2.0 用だからです。もちろん、対応するバージョンを自分でインストールすることもできます。ここで話しているのは、DSO 動的コンパイル方法を使用して Apache をコンパイルすることです
Apache のコンパイル方法については、以前の記事「apache+php+ での Apache の静的/動的コンパイルの適用」を参照してください。 mysql" http://www.5ilinux.com/apache01.html
ソフトウェア入手: http://httpd.apache.org/
tar zvxf apache_1.3.29.tar.gz
cd apache_1.3.29
src/を変更include/httpd.hスレッドの最大数を追加する
#define hard_server_limit 256を定義します。 --enable-module= so - -enable-module=rewrite --enable-shared=max --htdocsdir=/var/www &&
make &&
make install
#ここでは、enable-module を通じてセットアップ スクリプトを指示しますso モジュールと rewrite モジュールを開始するために必要なパラメータです。so モジュールは DSO サポートを提供するために使用される Apache コア モジュールであり、rewrite モジュールはアドレス書き換えを実装することを目的としたモジュールです。これは、rewrite モジュールが DBM サポートを必要とする場合です。初期インストール時に Apache にコンパイルされていないため、将来必要になったときに書き直す必要があります。これは、Apache 全体をコンパイルすることによってのみ実現できます。このため、今後 rewrite モジュールを使用しないことが確実でない限り、最初のコンパイル時に rewrite モジュールをコンパイルすることをお勧めします。
enable-shared=max このパラメータの機能は、Apache のコンパイル時に、それを除くすべての Apache 標準モジュールを DSO モジュールにコンパイルすることです。 Apache コアにコンパイルされるのではなく。
Apache のインストールは非常に簡単です。Apache を起動し、
/usr/local/apache/bin/apachectl start を確認してください。次に、IE を使用して http://サーバー アドレスを確認します。おなじみの Apache の羽のロゴが表示されるはずです。
3. PHP4.3.4をインストールします
ソフトウェアの入手先: http://www.php.net/downloads.php
tar zvxf php-4.3.4.tar.gz
cd php-4.3.4
./構成
--prefix=/usr/local/php
--with-mysql=/usr/local/mysql
--enable-force-cgi-redirect
--with-freetype-dir=/usr
--with -png-dir=/usr
--with-gd --enable-gd-native-ttf
--with-ttf
--with-gdbm
--with-gettext
--with-iconv
--with -jpeg-dir=/usr
--with-png
--with-zlib
--with-xml
--enable-calendar
--with-apxs=/usr/local/apache/bin/apxs
make
make install
# サーバーは GD ライブラリを使用する必要があるため、GD をサポートするいくつかのコンパイル パラメータを追加しました。インストールしていない場合は、GD ライブラリを直接使用します。インストール ディスクからインストールします。GD のインストールに加えて、libjpeg、libpng、およびその他のライブラリ ファイルもインストールする必要があることに注意してください。さらに、 --with-mysql=/usr/local/mysql は、mysql をインストールしたパスを指します。 --with-apxs は、Apache の apxs ファイルのパスを指します。
vi /usr/local/apache/conf/httpd.conf
このスコープに追加
AddType application/x-httpd-php .php
AddType application/x- httpd-php-source .phps
CPOPY PHP 設定ファイルを実行
cp ../php4.3.4/php.ini.dist /usr/local/php/lib/php.ini
php.ini ファイルを変更
register_globals = オン
ok! Apache サーバーを再起動します
/usr/local/apache/bin/apachectl restart
次に、php テスト ページ info.php を作成します。内容は次のとおりです
?>;
正常であれば、Apche+Mysql+PHP のインストールが成功したことを確認できるはずです。