LNMPの構築経験共有

8021 ワード

一週間をかけてようやくlnmpクラスタ(つまり伝統的なウェブサイトアーキテクチャ)を構築しました.下で共有してみます.構築の過程と出会いの様々な穴.
A.まずnginxサービスを構築する:
1.まずpcre(擬静的)ライブラリをインストールする
yum install pcre pcre-devel-y
 
2.一般ユーザーのホームディレクトリの下にtoolsディレクトリを作成します.(このディレクトリはソフトウェアを入れるためのものです.)
mkdir-p/home/oldboy/tools
 
3.nginx公式サイトに入るhttp://nginx.org/を選択します
wget-qhttp://nginx.org/download/nginx-1.6.3.tar.gz
 
4.解凍パッケージ
tar xf nginx-1.6.3.tar.gz
 
5.作成wwwユーザ
useradd www-s/sbin/nologin-M
 
6.opensslをインストールする
yum install openssl-devel-y
 
7.プロファイルのインストール
./configure--user=www--group=www--with-http_stubstatusmodule--with-http_同前module--prefix=/aplication/nginx-1.6.3/
配置時に以下の問題が発生したら://configure--user=www--group=www--with-http_stubstatusmodule--with-http_同前module--prefix=/aplication/nginx-1.6.3/
checing for OS
 + Linux 2.62-573.el 6.i 686 i 686
checking for C compler…not found
 
./configur:error:C compler cc is not found
yum-y install gccがインストールされていないためです.
 
 
8.コンパイルインストールnginx
メーク
make install
 
9.このディレクトリのためのソフトリンクを作成します.
ln-s/aplication/nginx-1.6.3/appication/nginx
 
10.設置結果を起動して確認する
//aplication/nginx/sbin/nginx起動nginx
ps-ef grep「nginx」
netstat-lntup grep 80
lsof-i:80
//appication/inx/sbin/nginx-t nginx文法が間違っているか確認します.
/appication/inx/sbin/inx-Vバージョンがインストールされている状況を確認する
[root@VM_185_169_centosappplication]菗/appplication/nginx/sbin/nginx
nginx:[alert]could not open error logs file:open()「/appication/nginx-1.6.3//logs/error.logs/logs」failed(2:No such file or directory)
2017/04/18 21:00:12[emerg]5735⼕0:open()「/appication/nginx-1.6.3//logs/access.logs」failed(2:No such file or directory)
nginxを起動すると、上記のエラーが発生しました.logsと内部のログファイルがありません.もう一つ作成する必要があります.
B.mysqlデータベースのインストール
1.ダウンロードソフトwget -q http: //mirrors .sohu.com /mysql/MySQL-5 .6 /mysql-5 .6.35-linux-glibc2.5-x86_64. tar .gz2.ストレス解消移動
タラ xf mysql-56.35-linux-glibc 2.5-x 86_64.tar.gz 
mkdir -p /appication
mv mysql-56.35-linux-glibc 2.5-x 86_64 /appication/mysql-5.35
3.ユーザーを作成し、権限を付与する
useradd-s/sbin/nologinx-M mysql
chown -R mysql.mysql /appication/mysql-5.35/
4.データベースを初期化する
cd /appication/mysql-5.35/
cp support-files/my-default.cnf /etc/my.cnf
//scripts/mysql_install_db --basedir=/application/mysql-5.35/ --datadir=/appication/mysql-5.35/data/ --user=mysql
5.mysqlデフォルト設定のデフォルトパスを変更します(筆者は自分のパスを使っていますので)
sed -i 's芬/usr/local/mysql菗/mysql-56.35菵g' /appication/mysql-5.35//bin/mysqld_safe
6.ログインを開始し、PATHパスを追加する
//application/mysql-5.35/bin/mysqld_safe &
lsof-i:3306
PATH="/appication/mysql-5.35/bin/:$PATH"
echo「PATH=」/appication/mysql-56.35/bin/:$PATH">/etc/profile
7.簡単化mysql起動
sed-i's菘/usr/local菗/appplication菗;;s'support-files/mysql.server
cp support-files/mysql.server/etc/init.d/mysqld
chmod+x/etc/init.d/mysqld
//etc/init.d/mysqld stop
//etc/init.d/mysqld start
8.電源を入れてから起動する
chkconfig--add mysqld
chkconfig--list mysqld
9.登録してテストする
[root@oldboy mysql-56.35.35]29853; mysql
ウエルカム ト the MySQL monitor.  Communds end with ; or \g.
Your MySQL connection id. is 2
Server バージョン: 5.6.35 MySQL Community Server (GPL)
 
Copyright (c) 2000, 2016年、 Oracle and/or its affiliates. All ライツ reerved.
 
Oracle is a. レジェンド トレーダーマーク 保存先 Oracle Corporation and/or its
affiliates. Other names may be tradmarks 保存先 their レスリング
owners.
 
Type 'help; or '\h. for help. Type '\c. ト clear the current input statement.
 
mysql> プロジェクト version()
+------++
𞓜 version() |
+------++
𞓜 5.6.35    |
+------++
1 row in セット (0.00 sec
mysql> create database oldboy;
Query OKです 1 row affected (0.00 sec
 
mysql> create database oldgirl;
Query OKです 1 row affected (0.00 sec
 
mysql> ショー databases like 'old%
+----------++
𞓜 Database (old%) |
+----------++
𞓜 oldboy          |
𞓜 oldgirl         |
+----------++
2 ローソン in セット (0.00 sec
C.PHP取付
1.PHPベースライブラリの設置
yum install-y zlib-devel libxml 2-devel libjpeg-devel libjpeg-turbo-devel libiconv-devel freetype-devel libpg-devel lipg-devel gd-devel libcurl-devel livel
2.PHPベースライブラリの取り付けが完了しているか確認する
rpm-qa zlib-devel libxml 2-devel libjpeg-devel libjpeg-turbo-devel libiconv-devel freetype-devel libpg-devel gd-devel libcurl-devel libcurl-devel livel
libxml 2-devel-23.76-21.el6_8.1.x 86_64
gd-devel-2..0.35-11.el6.x 86_64
zlib-devel-1.2-29.el 6.x 86_64
libxslet devel-1.1.26-2 el6_3.1.x 86_64
libcurl-devel-70.19.7-53.el6_9.x 86_64
libjpeg-turbo-devel-12.3.el 6_5 x 86_64
freetype-devel-23.11-17 el 6.6 x 86_64
libpng-devel-12.49-2 el 6_7.x 86_64
 
3.yumをインストールする時、このカバンはlibiconv-develではありません.他にインストールする必要があります.
wgethttp://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar xf libiconv-1.14.tar.gz
cd libiconv-1.14
./configur--prefix=/usr/local/libiconv
メーク
make install
 
4.epelソースをダウンロードし、PHP関連の拡張ライブラリをインストールする
wget-O/etc/yum.repos.d/epel.repohttp://mirrors.aliyun.com/repo/epel-6.repo
yum install-y libmcrypt-devel
yum install-y mhash
yum install-y mcrypt
 
5.PHPライブラリが正しく設置されているか確認する
rpm-qa mcrypt mhash libmcrypet-devel
 
6.PHP 5.52をコンパイルして設置する(これはmysqlデータベースがある場合)
cd/home/oldboy/tools/
泓上传php包
tar xf php-50.5.3.2.tar.gz
cd php-50.5.32
./configure\
--prefix=/appplication/php 5.5.32\
--with-mysql=/appication/mysql/\
--with-pdo-mysql=mysqlnd\
--with-inconv-dir=/usr/local/libiconv\
--with-freetype-dir\
--with-jpeg-dir\
--with-png-dir\
--with-zlib\
--with-libxml-dir=/usr\
--enaber-xml\
--disable-rpath\
--enabole-bcmart\
--enaber-shmop\
--enaber-sysvsem\
--enabole-inline-optimization\
--with-curl\
--enaber-mbergex\
--enaber-fpm\
--enaber-mbstring\
--with-mcrypt\
--with-gd\
--enaber-gd-native-ttf\
--with-openssl\
--with-mhash\
--enaber-pcntl\
--enaber-sockets\
--with-xmlrpc\
--enaber-soap\
--enaber-shart-tags\
--enaber-static\
--with-xsl\
--with-fpm-user=www\
--with-fpm-group=www\
--enaber-ftp\
--enabole-opcache=no
 
これはmysqlがない場合です.
./configure\
--prefix=/appplication/php 5.5.32\
--enaber-mysqlnd\
--with-pdo-mysql=mysqlnd\
--with-mysqli=mysqlnd\
--with-inconv-dir=/usr/local/libiconv\
--with-freetype-dir\
--with-jpeg-dir\
--with-png-dir\
--with-zlib\
--with-libxml-dir=/usr\
--enaber-xml\
--disable-rpath\
--enabole-bcmart\
--enaber-shmop\
--enaber-sysvsem\
--enabole-inline-optimization\
--with-curl\
--enaber-mbergex\
--enaber-fpm\
--enaber-mbstring\
--with-mcrypt\
--with-gd\
--enaber-gd-native-ttf\
--with-openssl\
--with-mhash\
--enaber-pcntl\
--enaber-sockets\
--with-xmlrpc\
--enaber-soap\
--enaber-shart-tags\
--enaber-static\
--with-xsl\
--with-fpm-user=www\
--with-fpm-group=www\
--enaber-ftp\
--enabole-opcache=no
 
7.コンパイルなどでインストール中にエラーが発生しないようにする
ln-s/appication/mysql/lib/libmysql client.so.18 /usr/lib 64/
touch ext/phar/phar.phar
 
8.コンパイルのインストールを開始し、ソフトリンクを作成し、phpを起動します.
メーク
make install
 
9.ソフトリンクの作成
ln-s/appplication/php 5.5.32/appication/php
 
10.PHP解析ファイルの配置
cd/home/oldboy/tools/
cp php.ini-production/appplication/php/lib/php.ini
 
11.プロファイルphp-fpm
cd/appication/php/etc/
cp php-fpm.co nf.default php-fpm.co nf
 
12.起動php
//アプリ/php/sbin/php-fpm
 
13.検査プロセスとポート
ps-fe grep php-fpm
lsof-i:9000
ここでLNMP環境構築が完了しました.ありがとうございます.