CentOS 6はLAMPをコンパイルしてデュアルマシンFastCGIを実現する
必要:
CenOS 6プラットフォームはLAMPを構築し、phpは独立したサービスとして機能する.
(1)3者は2台のホストから分離する
(2)phpMyAdminを提供するための仮想ホスト.もう1つの仮想ホストはwordpressを提供します
(3)cacheを取り付けphpに加速を与える
(4)mpmはpreforkモデル
注意:
(1)httpdはcpu密集型であり、phpはio密集型であり、mariadbはcpu密集型でありio密集型である.だからhttpdとphpを1台のホストに置いて、mariadbは単独で1台のホストに置きます
(2)CentOS 6プラットフォームはmysqlのrpmパッケージしか提供していないため、ここではmariadbバイナリインストールパッケージを使用してインストールする
(3)phpは個別サービスプロセスとして実行されるため、phpをコンパイルする際にphp-fpm特性を有効にする
(4)CentOS 6が提供する各アプリケーションのrpmインストールパッケージのバージョンが古いため、ソースコードをコンパイルしてインストールする必要がある
(5)httpdとphpの間にはFastCGIプロトコルで接続する必要があり,httpdは実は逆エージェントとして動作し,httpdをコンパイルする際にはproxyとproxy_を有効にする必要がある.cgi特性
(6)mpmにeventモデルを尋ねるように要求し、phpがhttpdのモジュールとして動作する場合、eventはスレッドモデルであるため、phpはスレッドセキュリティ機能--enable-maintainer-ztsを有効にする必要がある
環境:
iptablesとSELinuxを閉じる
Host 1:フロントエンドであるウェブサーバIP:10.0.0.61
Host 2:バックエンドDBサーバIP:10.0.0.62
Linux修正/etc/hosts/
Windows修正C:WindowsSystem 32driversetc
10.0.0.61 www.wordpress.com
10.0.0.61 www.phpadmin.com
構成:
Host2:
バイナリmariadbのインストール
プロファイルをコピーして構成
データベースの初期化:
権限:
Host1
データベース・サーバをリンクできるかどうかをテスト
システム・ユーザーの追加
開発環境の準備
ソースパッケージの準備:
コンパイルインストールapr:
コンパイルインストールapr-util
httpd-2.4をコンパイルインストールする.9
インストールphpをコンパイルし、fpm機能--enable-fpmを有効にする
続きます...
CenOS 6プラットフォームはLAMPを構築し、phpは独立したサービスとして機能する.
(1)3者は2台のホストから分離する
(2)phpMyAdminを提供するための仮想ホスト.もう1つの仮想ホストはwordpressを提供します
(3)cacheを取り付けphpに加速を与える
(4)mpmはpreforkモデル
注意:
(1)httpdはcpu密集型であり、phpはio密集型であり、mariadbはcpu密集型でありio密集型である.だからhttpdとphpを1台のホストに置いて、mariadbは単独で1台のホストに置きます
(2)CentOS 6プラットフォームはmysqlのrpmパッケージしか提供していないため、ここではmariadbバイナリインストールパッケージを使用してインストールする
(3)phpは個別サービスプロセスとして実行されるため、phpをコンパイルする際にphp-fpm特性を有効にする
(4)CentOS 6が提供する各アプリケーションのrpmインストールパッケージのバージョンが古いため、ソースコードをコンパイルしてインストールする必要がある
(5)httpdとphpの間にはFastCGIプロトコルで接続する必要があり,httpdは実は逆エージェントとして動作し,httpdをコンパイルする際にはproxyとproxy_を有効にする必要がある.cgi特性
(6)mpmにeventモデルを尋ねるように要求し、phpがhttpdのモジュールとして動作する場合、eventはスレッドモデルであるため、phpはスレッドセキュリティ機能--enable-maintainer-ztsを有効にする必要がある
環境:
iptablesとSELinuxを閉じる
Host 1:フロントエンドであるウェブサーバIP:10.0.0.61
Host 2:バックエンドDBサーバIP:10.0.0.62
Linux修正/etc/hosts/
Windows修正C:WindowsSystem 32driversetc
10.0.0.61 www.wordpress.com
10.0.0.61 www.phpadmin.com
構成:
Host2:
バイナリmariadbのインストール
# mysql
[root@localhost ~]# useradd -r mysql
# `/usr/local/`
[root@localhost ~]# tar -xf mariadb-5.5.46-linux-x86_64.tar.gz -C /usr/local/
[root@localhost ~]# cd /usr/local/
# `mysql`
[root@localhost local]# ln -sv mariadb-5.5.46-linux-x86_64/ mysql
`mysql' -> `mariadb-5.5.46-linux-x86_64/'
#
[root@localhost local]# chown -R root:mysql mysql/
# `/data/mysql`
[root@localhost local]# mkdir -pv /data/mysql
mkdir: created directory `/data'
mkdir: created directory `/data/mysql'
# 。
[root@localhost local]# chown -R mysql:mysql /data/mysql/
#
[root@localhost local]# cd mysql/
[root@localhost mysql]# scripts/mysql_install_db --user=mysql --datadir=/data/mysql/
# `/etc/rc.d/init.d`
[root@localhost mysql]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
プロファイルをコピーして構成
# cp support-files/my-large.cnf /etc/my.cnf
# vim /etc/my.cnf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
datadir=/data/mysql
character-set-server=utf8
collation-server=utf8_general_ci
default-storage-engine=InnoDB
innodb-file-per-table=TRUE
skip-name-resolve=TRUE
データベースの初期化:
#
[root@localhost mysql]# /etc/init.d/mysqld start
Starting MySQL.. SUCCESS!
[root@cb9326a6 mysql]# ss -tunl | grep 3306
tcp LISTEN 0 50 *:3306 *:*
# `/usr/local/mysql/bin/` `PATH`
[root@localhost mysql]# export PATH=/usr/local/mysql/bin/:$PATH
#
[root@localhost mysql]# mysql_secure_installation
権限:
[root@localhost ~]# mysql -u root -p
# root 10.0.0.0/8 。
MariaDB [(none)]> grant all privileges on *.* to 'root'@'10.0.0.%' identified by '123456';
# wordpress wpdb。
MariaDB [(none)]> create database wordpress;
# wordpress wordpress。
MariaDB [(none)]> create user 'wordpress'@'172.18.71.%' identified by 'wordpress';
# wordpress 10.0.0.0/8 wordpress 。
MariaDB [(none)]> grant all privileges on wpdb.* to 'wordpress'@'10.0.0.%' identified by 'wordpress';
#
MariaDB [(none)]> flush privileges;
Host1
データベース・サーバをリンクできるかどうかをテスト
# CentOS-6 mariadb, mysql 。
[root@localhost ~]# yum install -y mysql
# HostB
[root@localhost ~]# mysql -u root -h 10.0.0.62 -p
システム・ユーザーの追加
# useradd -r apache
開発環境の準備
# yum groupinstall -y "Development tools" "Server Platform Development"
# yum install -y pcre-devel libxml2-devel libmcrypt-devel bzip2-devel libcurl-devel
ソースパッケージの準備:
apr-1.5.0.tar.bz2 apr-util-1.5.3.tar.bz2 httpd-2.4.10.tar.bz2 php-5.4.40.tar.bz2 xcache-3.2.0.tar.bz2
コンパイルインストールapr:
# tar xf apr-1.5.0.tar.bz2
# cd apr-1.5.0
# ./configure --prefix=/usr/lcoal/apr
# make && make install
コンパイルインストールapr-util
# tar xf apr-util-1.5.3.tar.bz2
# cd apr-util-1.5.3
# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
# make && make install
httpd-2.4をコンパイルインストールする.9
# tar -xf httpd-2.4.10.tar.bz2
# cd httpd-2.4.10
# ./configure --prefix=/usr/local/apache2 \
--sysconfdir=/etc/httpd \
--enable-so \
--enable-ssl \
--enable-cgi \
--enable-rewrite \
--with-zlib \
--with-pcre \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util \
--enable-modules=most \
--enable-mpms-shared=all \
--enable-proxy \
--enable-proxy-fcgi \
--with-mpm=prefork
[root@localhost httpd-2.4.10]# make && make install
インストールphpをコンパイルし、fpm機能--enable-fpmを有効にする
# tar -xf php-5.4.40.tar.bz2
# cd php-5.4.40
# ./configure --prefix=/usr/local/php \
--with-config-file-path=/etc \
--with-config-file-scan-dir=/etc/php.d \
--with-libxml-dir=/usr \
--with-mysql \
--with-mysqli \
--with-openssl \
--with-mcrypt \
--with-png-dir \
--with-jpeg-dir \
--with-freetype-dir \
--with-zlib \
--with-bz2 \
--with-curl \
--enable-zip \
--enable-fpm \
--with-fpm-user=apache \
--with-fpm-group=apache \
--enable-mbstring \
--enable-xml \
--enable-sockets \
# make && make test && make install
続きます...