ホームページ  >  記事  >  php教程  >  Linux での PHP 開発環境のセットアップ -- LAMP

Linux での PHP 開発環境のセットアップ -- LAMP

WBOY
WBOYオリジナル
2016-07-11 20:00:361080ブラウズ
通常プログラムを書くときはサーバー上に構築されたPHP環境で行います。未知の知識への好奇心から、私はここ数日、自分のマシンに PHP 開発環境をセットアップしました。 phpinfo をページに簡単かつスムーズに表示したいと思っていましたが、環境をインストールするときに途中でエラーが発生することは予想していませんでした。長い間 Google を検索した結果、ついに phpinfo が表示されました。ここでは、発生した問題を要約し、参考情報を提供します。
私のOSはubuntuです
9.10,apt-getの強力な機能のおかげで、この記事を参照してください http://wiki.ubuntu.org.cn / index.php?title=Apache&variant=zh-cn#.E5.AE.89.E8.A3.85LAMP、簡単にLAMPの構築が完了しました。
その後、手がかゆくなったので、環境全体を削除し、ソースコードパッケージを使用して再構築しました。手順は次のとおりです。

(root 以外のアカウントでログインしているため、root 権限が必要な場合は sudo を使用して実行します)

1. ビルドのインストール
-必須
# bulid-essential は、ソースコードパッケージ (C/C++ プログラム) をコンパイルするために必要なコンパイルツールです
# ubuntu ではデフォルトではインストールされません。 sudo apt-get install build を実行できます。 -ubuntu の下で必須

インストールパッケージ build
-essential_11.4.tar.gz
# インストールコマンド
tar - zxvf build-essential_11.4.tar.gz
cd build
- 必須 - 11.4
./ configure
make
sudo make install
make clean

2. MySql インストール

ステップ
.1
ncurses インストール
# ncurses パッケージが見つからない場合、mysqlコンパイルでは、curses/termcap ライブラリが見つかりませんというエラーが報告されます
インストール パッケージ ncurses-5.6.tar.gz
tar
-zxvf呪い- 5.6. tar.gz
cd ncurses
-5.6
./configure --接頭辞=/ usr/ ローカル/ ncurses --with-共有--without-デバッグ-- 有効にする - widec
を作る
sudo make install
make clean

ステップ
.2
mysql インストール
インストールパッケージ
mysql-5.1.42タール.gz

ステップ
.a
# インストールコマンド
tar-zxvfmysql-5.1.42.tar.gz
CD
mysql-5.142
./configure --prefix=/usr/local/mysq l--with- named-curses-libs=/usr/local/ncurses/ lib/libncursessw. so.5.6--with-charset=gbk
# --prefix=/usr/local/mysq l インストールパス
# mysql 設定ファイルのパスに関する説明: mysql は次の順序で my.cnf を検索します
# /etc、mysql インストール ディレクトリ (/usr/local/mysql/etc など)、インストール ディレクトリの下のデータ ディレクトリ たとえば、/usr/local/mysql/data のいずれか最初に見つかったもの。/etc の下の my.cnf の構成はグローバル設定です
# --with-named-curses-libs=/usr/local/ncurses/lib/libncursesw.so.5.6 ncurses ライブラリ ファイルのインストール パス
# --localstatedir=/usr/local/mysql/var データベースのデフォルトのストレージ パス (/var/lib/mysql などの他のパスを設定できます)
# --with -charset= gbk は、中国語の文字セットをサポートするようにデータベースを設定します
make
sudo make install

step
.b
# mysql 設定ファイルをターゲット ディレクトリ /usr/local にコピーします/mysql/etc
# 新しい /usr/local/mysql/etc ディレクトリを作成します (このディレクトリは自動的に作成されません)
sudo mkdir/usr / local/ mysql /etc
sudo cp support
-files/my-medium .cnf /usr /local/ mysql/etc/my.cnf
# (必ずコピー後実行してください)構成ファイルを削除します。そうでない場合は、my-medium.cnf が削除されます)
make clean

ステップ
.c
# mysql という名前の Linux システム グループを追加します (mysql マニュアル 2.8 を参照してください。 1. ソースコードのインストール概要)
sudo groupadd mysql

# mysql という名前の新しい Linux システム ユーザーを作成し、mysql システム グループ
に追加します。 # Linux のみの場合 開始コマンド ユーザー インターフェイスでは、次の操作を使用して必要なアカウントを追加できます
# sudo useradd -M -s /bin/false -g mysql mysql
# -M このオプションはユーザー ディレクトリを作成しません
# -s は新しいユーザーが使用するシェルを指定します。/bin/false はユーザーがシステムにログインできないことを意味します
# -g mysql ユーザー mysql をグループ mysql に追加します

# 現在デスクトップ システムを使用しており、上記のコマンドを使用してアカウントを追加します。システムが起動すると、ログインしていませんが、mysql ユーザーがログイン インターフェースに表示されます
# 代わりに次のコマンドを使用すると、mysql アカウントはログイン インターフェースに表示されません
sudo useradd -r -s /bin/false-g mysql mysql
# -rシステムアカウントを作成し、ユーザーディレクトリを作成しません、ユーザー割り当てられたUIDは1000°ステップ未満です。 root としてコマンドを実行する場合は、--user オプションを使用する必要があります。オプションの値は、stpe.czz で作成したログイン アカウントと同じである必要があります。このユーザーでログインしてコマンドを実行する場合は、--user オプションを省略できます

#このステップで FATAL が報告された場合: mysqld エラーが見つかりませんでした。コマンドを に変更します
#sudo /usr
/
local/mysql
/
bin
/
mysql_install_db --ユーザー=mysql -- basedir=/usr/local/mysql
step.e
# mysql インストールディレクトリ (/usr/local/mysql) に入ります
cd /usr/ ローカル/ mysql
# ファイルのすべての属性を root ユーザーに変更します
sudo chown-R root .
# データのディレクトリ すべて属性は mysql ユーザー (つまり、step.c で作成されたユーザー) に変更されます
sudo chown-R mysqlvar
# グループを変更するプロパティ sudo chgrp
-R mysql. step.
f
# mysql サービスを開始
sudo /
usr /ローカル/mysql/bin/mysqld_safe --ユーザー=mysql & # にログインデータベース
/usr
/local/mysql/bin/ mysql- urootmysqlのインストールが完了しました3. Apache のインストール

#

DSO 動的コンパイルを使用します。動的コンパイルと静的コンパイルの違いについては、http://www.ha97.com/2612.html を参照してください。
インストール パッケージ httpd -
2.2.14.tar.gz tar-zvxf httpd
-2.2 .14.タール .gz cd httpd-2.2
.14./configure --prefix=/usr/local/apache --を有効にする-MOD- shared=most --enable-so
# --prefix=/usr/local/apache Apacheを/usr/local/apacheパスにインストールします
# --enable-mods-shared=most すべての標準モジュールを DSO モジュールに動的にコンパイルします
# --enable-so Apache コアは DSO をロードしますが、実際には動的モジュールをコンパイルしません
make
make install
make clean

# Apache を起動
sudo /usr/ local /apache/ビンプ/ apachectl Start #
ブラウザを開き、1freetypeインストールインストールパッケージfreetype
-
2.3

.

11
.タール

gz # インストールコマンド tar -zxvf freetype
-
2.3.11
.tar.gz cd freetype-2. 3.11 ./configure
--
prefix=/usr /ローカル
/ freetype make sudo make install make clean ステップ .2 zlib インストール インストールパッケージ zlib-1.2

.

3
.タール.
gz
# インストールコマンド tar -zxvf zlib-1.2.3.tar.gz
zlib
-1.2.3
./configure --prefix=/usr/local/zlib --shared
#--prefix=/usr/local/zlib zlib インストールディレクトリ --shared インストール共有ライブラリ
make
sudo make install
make clean

step
.3
libpng インストール
インストールパッケージlibpng
-1.4.0.tar.gz
# インストールコマンド
タール-zxvf libpng - 1.4.0.tar.gz
CD libpng
-1.4.0
0

# script ディレクトリ内の makefile.std ファイルを現在のディレクトリにコピーし、名前を makefile
cp scripts/makefile.std makefile
に変更します
# Makefile を編集し、27 行目あたりで次の内容を見つけます
#ZLIBLIB=../zlib
#ZLIBINC=../zlib
# に変更されました
# ZLIBLIB=/usr/local/zlib/lib (zlibライブラリファイルパス)
# ZLIBINC=/usr/local/zlib/include (zlib インクルードファイルパス)
# 保存して終了します
# zlibインストール時の設定コマンドが./configureの場合はmakefileを変更する必要はありません
作る🎜🎜
sudo make install
make clean

step
.4
jpeg インストール
インストールパッケージ jpegsrc
.v7.tar .gz
# インストールコマンド
tar -zxvf jpegsrc.v7.tar.gz
cd jp例:
-7
。 /configure --prefix=/usr/local/jpeg7
make
sudo make install
make clean
# 多くの人が手動で作成しますjpeg のディレクトリ構造が異なるのか、それとも他の理由によるのかはわかりません (要検証)

# 上記のパッケージはすべて、以下の gd ライブラリをインストールします

ステップ
.5
gdライブラリのインストール
インストールパッケージ gd
-2.0.35.tar .gz
# インストールコマンド

step
.a
tar
-zxvf gd-2.0.3 5.tar.gz
cd gd
-2.0.35
# gd設定コマンドを実行
LDFLAGS="-L/usr/local/lamp/contrib/lib" ./configure --prefix=/usr/local/ gd2 --with-freetype=/usr/local/freetype --with -png=/ usr/local/libpng --with-jpeg=/usr/ ローカル/jpeg7
#LDFLAGS ="-L/usr/local/zlib/lib" zlib ライブラリ ファイルのパス
# zlibインストール時の設定コマンドが./configureの場合、gd2ライブラリの設定コマンドを./configureに変更します --prefix=/usr/ local /gd2 --with-freetype=/usr/local/freetype - -- png =/usr/local/libpng --with-jpeg=/ usr /ローカル/ jpeg7
step
.b
# Makefile を編集して 232 行目付近を見つけます
# 類似した内容を参照 CPPFLAGS = -I/usr/local/freetype/含む/ freetype2 -I/usr/local/freetype/include -I/usr/local/freetype/include -I/usr/local/jpeg7/include
# を CPPFLAGS = -I/usr/local/ に変更freetype /include/freetype2 -I/usr/local/freetype/include -I/usr/local/freetype/include -I/usr/local/jpeg7/include -I/usr/local/libpng/include
# 保存して終了します

ステップ
.c
# gd_png.c ファイルを編集して if (!png_check_sig (sig, 8)) { /* 不正な署名 */
# を if (png_sig_cmp (sig, 0, 8)) {
に変更しました
# 保存して終了

step
.d
# コマンドを実行
make
sudo make install
make clean
# gdライブラリのインストールが完了しました

ステップ
.6
libxml2のインストール
インストールパッケージ libxml2-2.6.20.tar.gz
# libxml2 は xml
# インストールコマンド
tar を解析するために使用されます - zxvf libxml2 - 2.6.20.tar.gz
cd libxml2
-2.6.20
./構成 - - prefix=/usr/local/libxml
# nanohttp.c ファイルを編集し、 fd = open(filename, O_CREAT | O_WRONLY) を見つけます (O_WRONLY を検索すると見つかります)
# fd = open(filename, O_CREAT | O_WRONLY,0777);に変更します
# 保存して終了します
make
make install
make clean

ステップ
.7
php インストール
インストールパッケージ php
-5.3.1 .タール.gz
# インストールコマンド
ステップ.a
tar
-zxvf php- 5.3.1tar.gz
cd php
-5.3.1.tar
./configure --prefix=/usr/local/php --with -apxs2=/ usr/local/apache/bin/apxs --with- mysql=/usr/ local/mysql--with-libxml-dir=/usr/ ローカル/libxml2 - -with-zlib-dir=/usr/local/zlib --with-png-dir=/usr / local/libpng --with-jpeg-dir=/usr/local /jpeg7 -- with-freetyp-e-dir=/usr/local/freetype -- with-gd =/usr/local/gd2
# --with-zlib-dir=/usr/local/zlib のインストール目录、結果インストールzlibの配置コマンドは ./configure 、インストール目录は/usr/local
make
sudo make install
make clean

ステップ
.b
PHP 設定ファイルをコピー
sudo cp php
.ini-development / usr/ local/php/lib/php.ini
# 名前によってphp設定ファイルの名前が異なります。現在のバージョンでは、 ファイル php.ini-development (開発環境で使用) php.ini-production (本番環境で使用)

step
.d
Apache 設定ファイルを変更します
/ usr /local/apache/conf/html
LoadModule php5_module モジュール
/libphp5.
so
AddType アプリケーション/x-httpd
-
php.phpステップ.e #
rootアカウントでログインしている場合は、これをスキップしてくださいステップ
#
ディレクトリのWebディレクトリのアクセス許可を変更します sudo
chown-R ログインユーザー
:
ログインユーザー/ usr/ local/apache/htdocs step.f # Apache を再起動

sudo
/
アメリカ/地元
/apache/bin/apachectl restart さて、さまざまな問題により、この記事の執筆が数日遅れました。この間、書類が保存されていないために書類が紛失してしまうケースもあり、涙が溢れました!各パッケージ ./configure のインストールに含まれるパラメータは基本的なパラメータの一部にすぎず、LAMP の旅はまだ始まったばかりです。実際にやってみると、想像していたほど難しくないことがわかるでしょう。頑張ってください! Zhang Xiaoye Children's Shoes の強力なサポートに感謝します。幸せはあなたとともにあります!


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。