ホームページ >バックエンド開発 >PHPチュートリアル >Apache+Php+Mysql_PHP での静的/動的コンパイルの適用チュートリアル

Apache+Php+Mysql_PHP での静的/動的コンパイルの適用チュートリアル

WBOY
WBOYオリジナル
2016-07-15 13:24:221030ブラウズ

Apache+php+mysql の実装に成功している人は多く、インターネット上には多くの記事がありますが、多くの記事は何度もコピーされており、コンパイル方法を説明していないものもあります。 .3 コンパイル方法はそのまま転送されて apache2.0 に適用されますが、これは明らかに一部の初心者を誤解させます。

今日は、apache+mysql+php を使用した静的コンパイルと DSO 動的コンパイルの違いについて説明します。2 つのバージョンのコンパイル コマンドが異なるため、それぞれ apache1.3.27 と apache2.0.46 を使用して説明します。

システムと必要なソフトウェア:

Redhat9.0apache:1.3.27 および 2.0.46
php: 4.3.2
mysql: 4.0.13

まず mysql をインストールします。これは私たちの焦点では​​ないので、 mysql のインストールと構成を簡単に説明しました

tar zvxf mysql-4.0.13.tar.gzcd mysql-4.0.13

./configure --prefix=/usr/local/mysql --sysconfdir =/etc --localstatedir=/var/lib/mysql &&

make &&
make install

インストール完了!

次にデータベースを初期化します

/usr/local/mysql/bin/mysql_install_db

権限を設定します:

chown -R root /usr/local/mysql

設定ファイルをコピーします。

cp / usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf

mysqlを起動:

/use/local/mysql/bin/mysqld_safe --user=root &

パスワードの変更: 初期の root パスワードは空です

/usr/local/mysql/bin/mysqladmin -u root -p passwd 1234enter passwd:

パスワードを 1234 に変更します。初期パスワードは空なので、次のように入力します。パスワード Enter を押すだけです

新しいパスワードをテストします:

mysql -u root -p mysql

パスワードを入力してください:1234

すべてがうまくいけば、mysql を入力できます。

mysql については以上です。質問があれば、私は mysql に詳しくありません。さて、ここからがハイライトです。静的 DSO と動的 DSO をそれぞれ使用して Apache+php をコンパイルします

何が静的で何が DSO であるかについては、ここでは詳しく説明しませんが、個人的には DSO 動的を使用することをお勧めします。コンパイルします。

最初は、apache1.3.29+php4.3.4+mysql4.0.13の静的コンパイルです

apacheは初めてコンパイルされますが、phpのコンパイルには少なくともApacheがコンパイルされている必要があるため、インストールしないでください

一度

tar zvxf apache_1.3.27 .tar.gz

cd apache_1.3.27

./configure --prefix=/usr/local/apache

#Compile php



tar zvxf php4.3.4.tar.gz

cd php4.3.4

./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-apache=../apache_1.3.27 &&make &&make install


#2 回目のコンパイルとインストール apache:


cd ../apache_1.3.29

./configure --prefi=/usr/local/apache --activate-module=src/modules/php4/libphp4.a &&

make &&make installcp ../php4.3.4/php.ini.dist /usr/local/php/lib/php.ini


#Modify /usr/local/apache/conf/httpd.conf


この範囲で検索して追加します

AddType application/x-httpd-php .phpAddType application/x-httpd-php-source .phps

注: Apache と php のソース コード パッケージは同じディレクトリにあります, --with-apache=../ apache_1.3.27 はソースコードが解凍されるディレクトリを指します


#ok! 静的コンパイルは完了しました。あとはサーバーを起動するだけです

/usr/local/apache /bin/apachectl startその後、いくつかの php テストページ info.php: content 以下のように

phpinfo();

?>

正常であれば、static の成功おめでとうございます。総集編! ! !

DSO 動的コンパイルの方法について話しましょう:


まず apache をコンパイルしてインストールします

tar zvxf apache_1.3.29

cd apache_1.3.29

./configure --prefix=/usr/local/apache --enable - module=so --enable-module=rewrite --enable-shared=max &&make &&make install

soモジュールは、DSOがサポートするApacheheコアモジュールを提供するために使用されます。
enable-shared=max をコンパイルしない場合は、それ以外のすべての標準モジュールが DSO モジュールにコンパイルされることを意味します。


次に、php


tar zvxf php4.3.4.tar.gz

cd php4.3.2

./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql - をコンパイルします。 -with-apxs=/usr/local/apache/bin/apxs &&make &&make install

その後、httpd.confを変更します。方法は静的コンパイル方法と同じです

OK、DSO動的コンパイルが完了しました、皆さんもぜひご覧ください。明堂堂に来たら、両者の違いがはっきりとわかるはずです。 ! !

次に、apache2.0.46+php4.3.2 のコンパイル方法について説明します。ここでは、静的コンパイルをテストする時間がないので、DSO の動的コンパイルについてのみ説明します。あなた自身。

今すぐ Apache をコンパイルしてインストールします

tar zvxf httpd-2.0.46.tar.gz

cd httpd-2.0.46

./configure --prefix=/usr/local/apache2 --enable-so -- Enable-mods-shared=most &&make &&make install

--enable-so が 1.3.27 の --enable-module=so と同等であり、 --enable-mods-shared=most がと同等です 前のものとの違いに注意してください
--enable-shared=max、そうでない場合は、コンパイルが間違っていても私に連絡しないでください


それでも PHP をコンパイルします

tar zvxf php4.3.2.tar.gz
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache2/bin /apxs &&
make &&
make install

これは apxs2 であることに注意してください。 ! !

httpd.conf の変更も 1.3.27 とは異なります。Add Type application/x-tar .tgz を探し、

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source を追加します。 .phps

さらに、中国語を表示したい場合は、次のように変更します:

AddDefaultCharset gb2312

Apacheを起動

/usr/local/apache2/bin/apachectl start

そのinfo.phpでテストしてください。機能しないなんて問題です! ! !

さて、長々と書きましたが、皆さんのお役に立てれば幸いです! ! !

【関連記事】


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446780.html技術記事 Apache+php+mysql の実装に成功している人はたくさんいて、インターネット上には多くの記事がありますが、多くの記事は何度もコピーされており、コンパイル方法を説明していないことがわかりました。単純に apache を使用するものもあります...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。