您的位置:新葡亰496net > 网络数据库 > 新葡亰496net编写翻译安装,并各自设置event模块格

新葡亰496net编写翻译安装,并各自设置event模块格

发布时间:2019-11-09 07:53编辑:网络数据库浏览(74)

    任务目标:

    编译安装LAMP

        要求(1) 安装一个模块化的PHP

        要求(2) 安装一个FPM的PHP

     

    注意PHP需要最后一个安装,因为需要前两者的支持.

    所以这里的安装次序为

    1.httpd

    2.MariaDB

    3.PHP

    CentOS 6编译安装lamp,并分别安装event模块方式和FPM方式的PHP,centosfpm

     任务目标: 编译安装LAMP     要求(1) 安装一个模块化的PHP     要求(2) 安装一个FPM的PHP   注意PHP需要最后一个安装,因为需要前两者的支持. 所以这里的安装次序为 1.httpd 2.MariaDB 3.PHP
    

     

     

    CentOS下搭建分离式LAMP服务器平台

    新葡亰496net 1

    LAMP平台规划

    主机1:httpd php

    IP地址:10.170.2.60,安装httpd-2.4.9和php-5.4.26

    主机2:mariadb

    IP地址:10.170.2.50,安装mariadb-5.5.36

    配置主机1

    编译安装apr-1.5.0

    # tar xf apr-1.5.0.tar.bz2

    # cd apr-1.5.0

    # ./configure --prefix=/usr/local/apr

    # make && make install

    编译安装apr-util-1.5.3

    # 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.9.tar.bz2

    # cd httpd-2.4.9

    # ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd24 --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 --with-mpm=event

    # make && make install

    修改httpd主配置文件,设置Pid文件的路径

    #新葡亰496net, vim /etc/httpd24/httpd.conf

    在ServerRoot "/usr/local/apache"行下面添加一行:

    PidFile "/var/run/httpd.pid"

    提供SysV服务脚本/etc/rc.d/init.d/httpd24,这个文件需要新建

    # vim /etc/rc.d/init.d/httpd24

    说明:由于脚本内容较长,此处没有将其贴出,非常抱歉

    # chmod x /etc/rc.d/init.d/httpd24

    # chkconfig --add httpd24

    # chkconfig httpd24 on

    启动http24服务并测试

    # service httpd24 start

    启动httpd24服务时存在下面一段信息:

    Starting httpd: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message

    解决办法:

    # vim /etc/httpd24/httpd.conf

    将文件中的#ServerName www.example.com:80这一行启用,你可以修改为你想要 的服务器名,例如:ServerNamewww.muluhe.com,然后重启httpd24服务

    # service httpd24 restart

    编译安装php-5.4.26

    # tar xf php-5.4.26.tar.bz2

    # cd php-5.4.26

    #./configure --prefix=/usr/local/php5 --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl --enable-mbstring --with-freetype-dir

    --with-jpeg-dir--with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml

    --enable-sockets --enable-fpm --with-mcrypt --with-config-file-path=/etc

    --with-config-file-scan-dir=/etc/php.d --with-bz2

    # make && make install

    为php提供配置文件

    # cp php.ini-production /etc/php.ini

    编辑httpd配置文件,以支持php

    # vim /etc/httpd24/httpd.conf

    在AddType application/x-gzip .gz .tgz行下面添加下面两行:

    AddType application/x-httpd-php .php

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

    将DirectoryIndex index.html这一行改为:

    DirectoryIndex index.php index.html

    为php提供SysV启动脚本

    # cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

    # chmod x /etc/init.d/php-fpm

    # chkconfig --add php-fpm

    # chkconfig php-fpm on

    为php提供配置文件并编辑配置文件

    # cp /usr/local/php5/etc/php-fpm.conf.default/usr/local/php5/etc/php-fpm.conf

    # vim /usr/local/php5/etc/php-fpm.conf

    pm.max_children = 50

    pm.start_servers = 5

    pm.min_spare_servers = 2

    pm.max_spare_servers = 8

    pid = /usr/local/php5/var/run/php-fpm.pid

    listen = 10.170.2.60:9000

    创建虚拟主机并开启虚拟主机,结合php

    # vim /etc/httpd24/httpd.conf

    开启下面两个装载模块:

    LoadModule proxy_module modules/mod_proxy.so

    LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so

    开启虚拟主机,默认情况是关闭的:

    Include /etc/httpd24/extra/httpd-vhosts.conf

    编辑虚拟主机配置文件

    # vim /etc/httpd24/extra/httpd-vhosts.conf

    <VirtualHost *:80>

    DocumentRoot "/var/www/php"

    ServerName www.muluhe.com

    ProxyRequests Off

    ProxyPassMatch ^/(.*.php)$ fcgi://10.170.2.60:9000/var/www/php/$1

    <Directory "/var/www/php">

    Options none

    AllowOverride none

    Require all granted

    </Directory>

    </VirtualHost>

    创建/var/www/php目录并添加测试页

    # mkdir /var/www/php

    # cd /var/www/php

    # vim index.php

    <?php

    phpinfo();

    ?>

    重启httpd24和php服务,测试httpd和php结合

    # service httpd24 restart

    # service php-fpm restart

    新葡亰496net 2

    配置主机2


    编译安装mariadb-5.5.36

    # tar xf mariadb-5.5.36-linux-x86_64.tar.gz -C /usr/local

    # cd /usr/local/

    创建mariadb-5.5.36-linux-x86_64符号链接:

    # ln -sv mariadb-5.5.36-linux-x86_64/ mysql

    创建mysql组和mysql用户:

    # groupadd -r mysql

    # useradd -g mysql -r mysql

    为数据库提供配置文件:

    # cd mysql

    # mkdir /etc/mysql

    # chown -R root.mysql ./*

    # cp support-files/my-large.cnf /etc/mysql/my.cnf

    修改文件/etc/mysql/my.cnf文件内容,在thread_concurrency = 8行下添加一行:

    datadir = /mysql/data

    创建存放数据库数据目录

    # mkdir -pv /mysql/data

    # chown -R mysql.mysql /mysql

    # chown -R mysql.mysql /mysql/data

    为数据库提供SysV启动脚本,并设置为开机启动:

    # cp support-files/mysql.server /etc/init.d/mysqld

    # chkconfig --add mysqld

    # chkconfig mysqld on

    初始化数据库并启动数据库:

    # vim /etc/profile.d/mysql.sh

    export PATH=/usr/local/mysql/bin:$PATH

    # source /etc/profile.d/mysql.sh

    # vim /etc/ld.so.conf.d/mysql.conf

    /usr/local/mysql/lib

    # ln -sv /usr/local/mysql/include/ /usr/include/mysql

    # scripts/mysql_install_db --user=mysql --datadir=/mysql/data/

    # service

    测试分离式LAMP平台


    创建数据库并授权:

    设置数据库密码:

    # mysqladmin -u root password

    登录数据库并授权:

    # mysql -u root -p

    MariaDB [(none)]> CREATE DATABASE pma;

    MariaDB [(none)]> GRANT ALL ON pma.* TO 'pma'@'10.170.2.60' IDENTIFIED BY '666666';

    MariaDB [(none)]> FLUSH PRIVILEGES;

    MariaDB [(none)]> SHOW DATABASES;

    解压文件phpMyAdmin-3.5.1-all-languages.tar.bz2到/var/www/php,然后进行一些设定:

    # tar xf phpMyAdmin-3.5.1-all-languages.tar.bz2 -C /var/www/php

    # cd /var/www/php

    # mv phpMyAdmin-3.5.1-all-languages pma

    # cd pma

    # cp config.sample.inc.php config.inc.php

    # vim config.inc.php

    $cfg['blowfish_secret'] = 'a8b7c6dabkekif7449';

    $cfg['Servers'][$i]['host'] = '10.170.2.50';

    重启httpd24和php服务:

    # service httpd24 restart

    # service php-fpm restart

    在浏览器下输入:10.170.2.60/pma可以得到结果,然后输入账号和密码进行登录:

    新葡亰496net 3

    新葡亰496net 4

    LAMP平台规划 主机1:httpd php IP地址:10.170.2.60,安装httpd-2.4.9和php-5.4.26 主机2:mariadb IP地址:10.170.2.50,安...

    -------------------------实验:CentOS 7安装LAMP(PHP-FPM模式)---------------------

     

    一、安装包组

    # yum groupinstall "Development Tools" "Server Platform Development" –y

     

    1、安装PHP-FPM

     

    二、解决依赖关系

    1.安装pcre

    # yum install pcre-devel –y

     

    2.安装apr

    # tar xf apr-1.5.2.tar.bz2

    # cd apr-1.5.2

    # ./configure --prefix=/usr/local/apr

    # make && make install

     

    3.安装apr-util

    # tar xf apr-util-1.5.4.tar.bz2

    # cd apr-util-1.5.4

    # ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

    # make && make install

     

    首先要卸载PHP: yum remove php

    一、安装包组

    # yum groupinstall "Development Tools" "Server Platform Development" –y

     

    三、编译安装httpd 2.4

    1.编译安装

    # tar xf httpd-2.4.23.tar.bz2

    # cd httpd-2.4.23

    # ./configure --prefix=/usr/local/apache --sysconf=/etc/httpd24 --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 --with-mpm=event

    # make && make install

     

    各个参数解释:

    --prefix=/usr/local/apache 设定安装目录为/usr/local/apache

    --sysconf=/etc/httpd24 服务配置文件存放目录

    --enable-so 支持DSO机制,开启模块化

    --enable-ssl 支持ssl功能

    --enable-cgi 支持CGI功能

    --enable-rewrite 支持url重写

    --with-zlib 支持传输压缩

    --with-pcre 支持pcre正则表达式

    --with-apr=/usr/local/apr 指明apr安装位置

    --with-apr-util=/usr/local/apr-util/ 指明apr-util安装位置

    --enable-modules=most 启用模块级别:most大多数

    --enable-mpms-shared=all 编译所有支持的模式

    --with-mpm=event 指明mpm模块为event模式

     

    2.给新httpd提供一个脚本

    # cd /etc/rc.d/init.d/

    # cp httpd httpd24

    # vim httpd24

    大概42行

    apachectl=/usr/local/apache/bin/apachectl

    httpd=${HTTPD-/usr/local/apache/bin/httpd}

    pidfile=${PIDFILE-/usr/local/apache/logs/httpd.pid}

    lockfile=${LOCKFILE-/var/lock/subsys/httpd24}

    保存退出

     

    3.加入到服务列表

    # chkconfig --add httpd24

     

    4.移除hash缓存

    # hash –r

     

    5.将新的httpd添加到环境变量

    # vim /etc/profile.d/httpd.sh

    内容:

    export PATH=/usr/local/apache/bin:$PATH

     

    6.重读一下刚刚修改的环境变量

    # . /etc/profile.d/httpd.sh

     

    7.检查一下

    # hash

     

    8.检测配置文件语法

    # httpd –t

     

    9.先关掉2.2版本的httpd

    # service httpd stop

     

    10.启动2.4版本的httpd

    # service httpd24 start

     

    11.检查80端口

    # ss -tnl

    # ps aux | grep httpd

     

    12.查看是否加载了event模块(mpm_event_module (shared))

    # httpd –M

     

        yum install php-fpm

    二、解决依赖关系

    1.安装pcre

    # yum install pcre-devel –y

     

    2.安装apr

    # tar xf apr-1.5.2.tar.bz2

    # cd apr-1.5.2

    # ./configure --prefix=/usr/local/apr

    # make && make install

     

    3.安装apr-util

    # tar xf apr-util-1.5.4.tar.bz2

    # cd apr-util-1.5.4

    # ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

    # make && make install

     

    四、安装MariaDB

    1.把安装包解压到/usr/local/下

    # tar xf mariadb-5.5.53-linux-x86_64.tar.gz -C /usr/local

     

    2.创建数据存放目录

    # mkdir -pv /mydata/data

     

    3.创建一个mysql用户

    # useradd -r mysql

     

    4.附加权限到数据存放目录

    # chown -R mysql.mysql /mydata/data/

     

    5.创建软连接到mysql

    # cd /usr/local

    # ln -sv mariadb-5.5.53-linux-x86_64/ mysql

     

    6.更新所有文件的属主属组

    # cd mysql/

    # chown -R root.mysql ./*

     

    7.初始化数据库

    # scripts/mysql_install_db --datadir=/mydata/data/ --user=mysql

     

    8.提供配置文件

    # mkdir /etc/mysql

    # cp support-files/my-large.cnf /etc/mysql/my.cnf

     

    9.修改配置文件

    # vim /etc/mysql/my.cnf

    大概42行附近空白行添加

    datadir = /mydata/data

    innodb_file_per_table =on

    skip_name_resolve = on

     

    10.保存退出

     

    11.创建服务

    # cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld

    # chkconfig --add mysqld

     

    12.启动mysql

    # service mysqld start

     

    13.检查3306

    # ss –tnl

     

    14.连接mysql测试

    # /usr/local/mysql/bin/mysql

     

    15.运行安全初始化脚本,包含root用户的密码创建

    # /usr/local/mysql/bin/mysql_secure_installation

     

    2、 查看php-fpm所对应的配置文件

    三、编译安装httpd 2.4

    1.编译安装

    # tar xf httpd-2.4.23.tar.bz2

    # cd httpd-2.4.23

    # ./configure --prefix=/usr/local/apache --sysconf=/etc/httpd24 --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 --with-mpm=event

    # make && make install

     

    各个参数解释:

    --prefix=/usr/local/apache 设定安装目录为/usr/local/apache

    --sysconf=/etc/httpd24 服务配置文件存放目录

    --enable-so 支持DSO机制,开启模块化

    --enable-ssl 支持ssl功能

    --enable-cgi 支持CGI功能

    --enable-rewrite 支持url重写

    --with-zlib 支持传输压缩

    --with-pcre 支持pcre正则表达式

    --with-apr=/usr/local/apr 指明apr安装位置

    --with-apr-util=/usr/local/apr-util/ 指明apr-util安装位置

    --enable-modules=most 启用模块级别:most大多数

    --enable-mpms-shared=all 编译所有支持的模式

    --with-mpm=event 指明mpm模块为event模式

     

    2.给新httpd提供一个脚本

    # cd /etc/rc.d/init.d/

    # cp httpd httpd24

    # vim httpd24

    大概42行

    apachectl=/usr/local/apache/bin/apachectl

    httpd=${HTTPD-/usr/local/apache/bin/httpd}

    pidfile=${PIDFILE-/usr/local/apache/logs/httpd.pid}

    lockfile=${LOCKFILE-/var/lock/subsys/httpd24}

    新葡亰496net 5

    保存退出

     

    3.加入到服务列表

    # chkconfig --add httpd24

     

    4.移除hash缓存

    # hash –r

     

    5.将新的httpd添加到环境变量

    # vim /etc/profile.d/httpd.sh

    内容:

    export PATH=/usr/local/apache/bin:$PATH

     

    6.重读一下刚刚修改的环境变量

    # . /etc/profile.d/httpd.sh

     

    7.检查一下

    # hash

     

    8.检测配置文件语法

    # httpd –t

     

    9.先关掉2.2版本的httpd

    # service httpd stop

     

    10.启动2.4版本的httpd

    # service httpd24 start

     

    11.检查80端口

    # ss -tnl

    # ps aux | grep httpd

     

    12.查看是否加载了event模块(mpm_event_module (shared))

    # httpd –M

    新葡亰496net 6

     

    五、以模块方式编译安装php

    1.解压缩安装包

    # tar xf php-5.5.38.tar.bz2

     

    2.安装依赖软件包bzip2-devel和epel源的libmcrypt-devel和libxml2-devel包

    # yum install bzip2-devel libmcrypt-devel libxml2-devel –y

     

    3.安装

    # cd php-5.5.38

    ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts

     

    各参数解释:

    --prefix=/usr/local/php 默认安装路径

    --with-mysql=/usr/local/mysql 指明mysql安装路径,如果有特定路径就使用等号"="后面跟上路径,没有则省略等号"="

    --with-openssl 使用OpenSSL

    --with-mysqli=/usr/local/mysql/bin/mysql_config 定义mysqli接口

    --enable-mbstring 支持多字节字符串支持

    --with-freetype-dir 支持各种字体

    --with-jpeg-dir 支持处理jpeg格式图片

    --with-png-dir 支持处理png格式图片

    --with-zlib 支持压缩库

    --with-libxml-dir=/usr 支持处理xml文档

    --enable-xml 支持xml

    --enable-sockets 使php支持以sockets方式通信

    --with-apxs2=/usr/local/apache/bin/apxs (关键)表示把php编译成Apache的模块

    --with-mcrypt 支持加密解密库

    --with-config-file-path=/etc 定义php配置文件(php.ini)放置路径

    --with-config-file-scan-dir=/etc/php.d 其他配置文件查找路径

    --with-bz2 支持bz2格式加密

    --enable-maintainer-zts 仅针对mpm为event和worker的情况,编译成zts模块,如果是prefork则不需要

    # make && make install

     

    4.把php的配置文件复制到/etc下

    # cp php.ini-production /etc/php.ini

     

    5.编辑httpd配置文件

    # cd /etc/httpd24/

    先备份

    # cp httpd.conf{,.bak}

    # vim httpd.conf

    确保有这样一行(证明php5模块已加载):

    LoadModule php5_module modules/libphp5.so

     

    添加两行,用于支持php格式文档

    AddType application/x-httpd-php .php

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

     

    设置默认文档页

    修改 DirectoryIndex index.html

    为 DirectoryIndex index.php index.html

     

    6.已经设置完毕,下面测试一下:

    6.1 重启httpd24

    # service httpd24 restart

     

    6.2 检查一下80端口

    # ss -tnlp

     

    6.3 看看是否已经有了php5_module

    # httpd -M

     

    6.4 修改一下默认页面为php格式,进行测试

    # cd /usr/local/apache/htdocs/

    # mv index.html index.php

    # vim index.php

     

    <?php

        $conn=mysql_connect('127.0.0.1','root','');

        if ($conn)

            echo "Connect OK!";

        else

            echo "Failure.";

        mysql_close();

    ?>

    上面的数据库连接用户名和密码按照自己设置填写.

     

    6.5 浏览器访问测试一下

    OK已成功.

     

    rpm -ql php-fpm

    四、安装MariaDB

    1.把安装包解压到/usr/local/下

    # tar xf mariadb-5.5.53-linux-x86_64.tar.gz -C /usr/local

     

    2.创建数据存放目录

    # mkdir -pv /mydata/data

     

    3.创建一个mysql用户

    # useradd -r mysql

     

    4.附加权限到数据存放目录

    # chown -R mysql.mysql /mydata/data/

     

    5.创建软连接到mysql

    # cd /usr/local

    # ln -sv mariadb-5.5.53-linux-x86_64/ mysql

     

    6.更新所有文件的属主属组

    # cd mysql/

    # chown -R root.mysql ./*

     

    7.初始化数据库

    # scripts/mysql_install_db --datadir=/mydata/data/ --user=mysql

     

    8.提供配置文件

    # mkdir /etc/mysql

    # cp support-files/my-large.cnf /etc/mysql/my.cnf

     

    9.修改配置文件

    # vim /etc/mysql/my.cnf

    大概42行附近空白行添加

    datadir = /mydata/data

    innodb_file_per_table =on

    skip_name_resolve = on

     

    10.保存退出

     

    11.创建服务

    # cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld

    # chkconfig --add mysqld

     

    12.启动mysql

    # service mysqld start

     

    13.检查3306

    # ss –tnl

     

    14.连接mysql测试

    # /usr/local/mysql/bin/mysql

     

    15.运行安全初始化脚本,包含root用户的密码创建

    # /usr/local/mysql/bin/mysql_secure_installation

     

    六、以fpm方式再安装PHP

    1. 先清理掉之前解压的php目录

    # rm -rf php-5.5.38

     

    2. 重新解压

    # tar xf php-5.5.38.tar.bz2

     

    3. 编译安装

    # cd php-5.5.38

    # ./configure --prefix=/usr/local/php-f --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --enable-fpm --with-mcrypt --with-config-file-path=/etc/php-f --with-config-file-scan-dir=/etc/php-f.d --with-bz2

     

    这次与上一次配置的php最大不同就在于这个参数

    --enable-fpm 表示是以fpm方式编译

    所以就不能下面这个参数

    --with-apxs2=/usr/local/apache/bin/apxs (表示把php编译成Apache的模块)

     

    另外要把相关路径改一下名字,不要与刚刚安装的php目录重名,这里我们改为php-f

    --prefix=/usr/local/php-f

    --with-config-file-path=/etc/php-f

    --with-config-file-scan-dir=/etc/php-f.d

     

    # make -j 2 && make install

     

    4.修改httpd配置

    4.1 先停掉httpd

    # service httpd24 stop

     

    4.2我们需要一个默认的httpd.conf,先备份旧的,然后恢复到默认状态

    # cd /etc/httpd24

    # mv httpd.conf httpd.conf.mod_php

    # cp httpd.conf.bak httpd.conf

     

    4.3 为php提供配置文件

    # mkdir /etc/php-f{,.d}

    # cd

    # cp php-5.5.38/php.ini-production /etc/php-f/php.ini

     

    4.4 添加服务脚本

    # cp php-5.5.38/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm

     

    4.5 添加执行权限

    # chmod x /etc/rc.d/init.d/php-fpm

    # chkconfig --add php-fpm

     

    4.6 修改配置文件

    # cd /usr/local/php-f/etc

    来一份默认配置文件

    # cp php-fpm.conf.default php-fpm.conf

     

    # vim php-fpm.conf

    监听端口改为所有

    listen = 0.0.0.0:9000

    最大进程数

    pm.max_children = 50

    刚启动时进程数

    pm.start_servers = 5

    最少空闲进程数

    pm.min_spare_servers = 2

    最大空闲进程数

    pm.max_spare_servers = 5

    pid路径

    pid = /usr/local/php-f/var/run/php-fpm.pid

     

    5.启动php-fpm

    # service php-fpm start

     

    6.检查一下进程

    # ps aux | grep fpm

    看到已经有5个空闲进程

     

        /usr/lib/systemd/system/php-fpm.service

    五、以模块方式编译安装php

    1.解压缩安装包

    # tar xf php-5.5.38.tar.bz2

     

    2.安装依赖软件包bzip2-devel和epel源的libmcrypt-devel和libxml2-devel包

    # yum install bzip2-devel libmcrypt-devel libxml2-devel –y

     

    3.安装

    # cd php-5.5.38

    ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts

     

    各参数解释:

    --prefix=/usr/local/php 默认安装路径

    --with-mysql=/usr/local/mysql 指明mysql安装路径,如果有特定路径就使用等号"="后面跟上路径,没有则省略等号"="

    --with-openssl 使用OpenSSL

    --with-mysqli=/usr/local/mysql/bin/mysql_config 定义mysqli接口

    --enable-mbstring 支持多字节字符串支持

    --with-freetype-dir 支持各种字体

    --with-jpeg-dir 支持处理jpeg格式图片

    --with-png-dir 支持处理png格式图片

    --with-zlib 支持压缩库

    --with-libxml-dir=/usr 支持处理xml文档

    --enable-xml 支持xml

    --enable-sockets 使php支持以sockets方式通信

    --with-apxs2=/usr/local/apache/bin/apxs (关键)表示把php编译成Apache的模块

    --with-mcrypt 支持加密解密库

    --with-config-file-path=/etc 定义php配置文件(php.ini)放置路径

    --with-config-file-scan-dir=/etc/php.d 其他配置文件查找路径

    --with-bz2 支持bz2格式加密

    --enable-maintainer-zts 仅针对mpm为event和worker的情况,编译成zts模块,如果是prefork则不需要

    # make && make install

     

    4.把php的配置文件复制到/etc下

    # cp php.ini-production /etc/php.ini

     

    5.编辑httpd配置文件

    # cd /etc/httpd24/

    先备份

    # cp httpd.conf{,.bak}

    # vim httpd.conf

    确保有这样一行(证明php5模块已加载):

    LoadModule php5_module modules/libphp5.so

     

    添加两行,用于支持php格式文档

    AddType application/x-httpd-php .php

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

     

    设置默认文档页

    修改 DirectoryIndex index.html

    为 DirectoryIndex index.php index.html

     

    6.已经设置完毕,下面测试一下:

    6.1 重启httpd24

    # service httpd24 restart

     

    6.2 检查一下80端口

    # ss -tnlp

    新葡亰496net 7

     

    6.3 看看是否已经有了php5_module

    # httpd -M

    新葡亰496net 8

     

    6.4 修改一下默认页面为php格式,进行测试

    # cd /usr/local/apache/htdocs/

    # mv index.html index.php

    # vim index.php

     

    <?php

        $conn=mysql_connect('127.0.0.1','root','');

        if ($conn)

            echo "Connect OK!";

        else

            echo "Failure.";

        mysql_close();

    ?>

    上面的数据库连接用户名和密码按照自己设置填写.

     

    6.5 浏览器访问测试一下

    新葡亰496net 9

    OK已成功.

     

    七.再次配置httpd2.4

    1.编辑httpd24的配置文件

    # cd /etc/httpd24

    # vim httpd.conf

    启用这两个模块

    LoadModule proxy_module modules/mod_proxy.so

    LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so

     

    添加文件类型

    AddType application/x-httpd-php .php

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

     

    找到 DirectoryIndex index.html

    改为

    DirectoryIndex index.php index.html

     

    取消这一行的注释,启用虚拟主机配置文件

    #Include /etc/httpd24/extra/httpd-vhosts.conf

     

    2.配置虚拟主机

    2.1 创建两个网站文件夹

    # mkdir -p /web/vhosts/{pma,wp}

     

    2.2 编辑配置文件,添加虚拟主机

    # vim /etc/httpd24/extra/httpd-vhosts.conf

    内容修改如下

    <VirtualHost *:80>

        ServerAdmin [email protected]

        DocumentRoot /web/vhosts/pma

        ServerName www1.buybybuy.com

        ErrorLog logs/pma.err

        CustomLog logs/pma.access combined

        DirectoryIndex index.html index.php

        ProxyRequests Off

        ProxyPassMatch ^/(.*.php)$ fcgi://127.0.0.1:9000/web/vhosts/pma/$1

        <Directory "/web/vhosts/pma">

            Options Indexes FollowSymLinks

            AllowOverride All

            Require all granted

        </Directory>

    </VirtualHost>

    <VirtualHost *:80>

        ServerAdmin [email protected]

        DocumentRoot /web/vhosts/wp

        ServerName www2.buybybuy.com

        ErrorLog logs/wp.err

        CustomLog logs/wp.access combined

        DirectoryIndex index.html index.php

        ProxyRequests Off

        ProxyPassMatch ^/(.*.php)$ fcgi://127.0.0.1:9000/web/vhosts/wp/$1

        <Directory "/web/vhosts/wp">

            Options Indexes FollowSymLinks

            AllowOverride All

            Require all granted

        </Directory>

    </VirtualHost>

    相关解释

    ProxyRequests Off:关闭正向代理

    ProxyPassMatch:把以.php结尾的文件请求发送到php-fpm进程,php-fpm至少需要知道运行的目录和URI,所以这里直接在fcgi://127.0.0.1:9000后指明了这两个参数,其它的参数的传递已经被mod_proxy_fcgi.so进行了封装,不需要手动指定。

     

        /etc/logrotate.d/php-fpm

    六、以fpm方式再安装PHP

    1. 先清理掉之前解压的php目录

    # rm -rf php-5.5.38

     

    2. 重新解压

    # tar xf php-5.5.38.tar.bz2

     

    3. 编译安装

    # cd php-5.5.38

    # ./configure --prefix=/usr/local/php-f --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --enable-fpm --with-mcrypt --with-config-file-path=/etc/php-f --with-config-file-scan-dir=/etc/php-f.d --with-bz2

     

    这次与上一次配置的php最大不同就在于这个参数

    --enable-fpm 表示是以fpm方式编译

    所以就不能下面这个参数

    --with-apxs2=/usr/local/apache/bin/apxs (表示把php编译成Apache的模块)

     

    另外要把相关路径改一下名字,不要与刚刚安装的php目录重名,这里我们改为php-f

    --prefix=/usr/local/php-f

    --with-config-file-path=/etc/php-f

    --with-config-file-scan-dir=/etc/php-f.d

     

    # make -j 2 && make install

     

    4.修改httpd配置

    4.1 先停掉httpd

    # service httpd24 stop

     

    4.2我们需要一个默认的httpd.conf,先备份旧的,然后恢复到默认状态

    # cd /etc/httpd24

    # mv httpd.conf httpd.conf.mod_php

    # cp httpd.conf.bak httpd.conf

     

    4.3 为php提供配置文件

    # mkdir /etc/php-f{,.d}

    # cd

    # cp php-5.5.38/php.ini-production /etc/php-f/php.ini

     

    4.4 添加服务脚本

    # cp php-5.5.38/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm

     

    4.5 添加执行权限

    # chmod x /etc/rc.d/init.d/php-fpm

    # chkconfig --add php-fpm

     

    4.6 修改配置文件

    # cd /usr/local/php-f/etc

    来一份默认配置文件

    # cp php-fpm.conf.default php-fpm.conf

     

    # vim php-fpm.conf

    监听端口改为所有

    listen = 0.0.0.0:9000

    最大进程数

    pm.max_children = 50

    刚启动时进程数

    pm.start_servers = 5

    最少空闲进程数

    pm.min_spare_servers = 2

    最大空闲进程数

    pm.max_spare_servers = 5

    pid路径

    pid = /usr/local/php-f/var/run/php-fpm.pid

     

    5.启动php-fpm

    # service php-fpm start

     

    6.检查一下进程

    # ps aux | grep fpm

    看到已经有5个空闲进程

    新葡亰496net 10

     

    八、安装phpMyadmin

    1.把解压phpMyadmin后文件夹中的所有文档以及文件夹复制到/web/vhosts/pma/下

    # cd

    # cp -rf /phpMyAdmin-4.4.15.8-all-languages/* /web/vhosts/pma/

     

    2.编辑phpMyadmin的配置文件

    # cd /web/vhosts/pma

     

    3.备份原始配置文件并编辑新的配置文件

    # cp config.sample.inc.php config.inc.php

    # vim config.inc.php

    填入32位随机字码

    $cfg['blowfish_secret'] = 'e2d8e1132dc737b3dc1f05cd44c0cc9e'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

     

    4.测试

    4.1重启httpd和php-fpm

    # service httpd24 restart

    # service php-fpm restart

     

    4.2浏览器测试结果

     

    5.这里可以用mysql的默认用户root直接登录测试.root账号的设置已经在前面第四节的第15部分设置.

    6.另一个虚拟主机wp安装方式同理

    6编译安装lamp,并分别安装event模块方式和FPM方式的PHP,centosfpm 任务目标: 编译安装LAMP 要求(1) 安装一个模块化的PHP 要求(2) 安装一个F...

        /etc/php-fpm.conf

    七.再次配置httpd2.4

    1.编辑httpd24的配置文件

    # cd /etc/httpd24

    # vim httpd.conf

    启用这两个模块

    LoadModule proxy_module modules/mod_proxy.so

    LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so

     

    添加文件类型

    AddType application/x-httpd-php .php

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

     

    找到 DirectoryIndex index.html

    改为

    DirectoryIndex index.php index.html

     

    取消这一行的注释,启用虚拟主机配置文件

    #Include /etc/httpd24/extra/httpd-vhosts.conf

     

    2.配置虚拟主机

    2.1 创建两个网站文件夹

    # mkdir -p /web/vhosts/{pma,wp}

     

    2.2 编辑配置文件,添加虚拟主机

    # vim /etc/httpd24/extra/httpd-vhosts.conf

    内容修改如下

    <VirtualHost *:80>

        ServerAdmin admin@buybybuy.com

        DocumentRoot /web/vhosts/pma

        ServerName www1.buybybuy.com

        ErrorLog logs/pma.err

        CustomLog logs/pma.access combined

        DirectoryIndex index.html index.php

        ProxyRequests Off

        ProxyPassMatch ^/(.*.php)$ fcgi://127.0.0.1:9000/web/vhosts/pma/$1

        <Directory "/web/vhosts/pma">

            Options Indexes FollowSymLinks

            AllowOverride All

            Require all granted

        </Directory>

    </VirtualHost>

    <VirtualHost *:80>

        ServerAdmin admin@buybybuy.com

        DocumentRoot /web/vhosts/wp

        ServerName www2.buybybuy.com

        ErrorLog logs/wp.err

        CustomLog logs/wp.access combined

        DirectoryIndex index.html index.php

        ProxyRequests Off

        ProxyPassMatch ^/(.*.php)$ fcgi://127.0.0.1:9000/web/vhosts/wp/$1

        <Directory "/web/vhosts/wp">

            Options Indexes FollowSymLinks

            AllowOverride All

            Require all granted

        </Directory>

    </VirtualHost>

    相关解释

    ProxyRequests Off:关闭正向代理

    ProxyPassMatch:把以.php结尾的文件请求发送到php-fpm进程,php-fpm至少需要知道运行的目录和URI,所以这里直接在fcgi://127.0.0.1:9000后指明了这两个参数,其它的参数的传递已经被mod_proxy_fcgi.so进行了封装,不需要手动指定。

     

        /etc/php-fpm.d

    八、安装phpMyadmin

    1.把解压phpMyadmin后文件夹中的所有文档以及文件夹复制到/web/vhosts/pma/下

    # cd

    # cp -rf /phpMyAdmin-4.4.15.8-all-languages/* /web/vhosts/pma/

     

    2.编辑phpMyadmin的配置文件

    # cd /web/vhosts/pma

     

    3.备份原始配置文件并编辑新的配置文件

    # cp config.sample.inc.php config.inc.php

    # vim config.inc.php

    填入32位随机字码

    $cfg['blowfish_secret'] = 'e2d8e1132dc737b3dc1f05cd44c0cc9e'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

     

    4.测试

    4.1重启httpd和php-fpm

    # service httpd24 restart

    # service php-fpm restart

     

    4.2浏览器测试结果

    新葡亰496net 11

     

    5.这里可以用mysql的默认用户root直接登录测试.root账号的设置已经在前面第四节的第15部分设置.

    6.另一个虚拟主机wp安装方式同理

        /etc/php-fpm.d/www.conf

        /etc/sysconfig/php-fpm

        /run/php-fpm

    3、PHP-FPM常见配置

    vim /etc/php-fpm.d/www.conf

    daemonize = no //是否将程序运行在后台

    listen = 127.0.0.1:9000 //FPM 监听地址(php-fpm占用的是9000端口)

    listen.backlog = -1 //等待队列的长度 -1表示无限制

    listen.allowed_clients = 127.0.0.1 //仅允许哪些主机访问【可以用逗号隔开,添加多个地址】

    pm = dynamic //PM开机进程是动态运行还是静态运行

    //static 固定数量的子进程,pm.max_childen

    //dynamic子进程数据以动态模式管理

    pm.start_servers=数字         开机几个进程

    pm.min_spare_servers=#   最少空闲几个进程

    pm.max_spare_servers=#   最多空闲几个进程

    pm.max_requests = 500   最多支持的并发请求

    php_value[session.save_handler] = files

    php_value[session.save_path] = /var/lib/php/session

    //设置session存放位置

    4、 启动PHP-FPM

        systemctl start php-fpm

    5、 安装httpd包

        yum install httpd

    6、查看Httpd mod_fcgi模块是否加载

        httpd -M | grep fcgi

        proxy_fcgi_module (shared)

    7、 添加FCGI的配置文件

    DirectoryIndex index.php

    ProxyRequests off //是否开启正向代理

    ProxyPassMatch ^/(.*.php)$

    fcgi://127.0.0.1:9000/var/www/html/$1 //开启FCGI反向代理

    //前面的/相对于后面的/var/www/html而言,后面的$1是指前面的/(.*.php)

    8、 重启Httpd:systemctl start httpd

    --------------------------实验:CentOS7编译安装LAMP----------------------------

    在centos7上编译安装LAMP:

    1、

    mairadb:通用二进制格式,mariadb-5.5.56

    httpd:编译安装,httpd-2.4.25

    php5:编译安装,php-5.6.30

    phpMyAdmin:安装phpMyAdmin-4.4.15.10-all-languages

    Xcache:编译安装xcache-3.2.0

    php5.4依赖于mariadb-devel包

    顺序:mariadb-->httpd-->php

    2、二进制安装mariadb

    (1)ftp://172.16.0.1/pub/Source/7.x86_64/mariadb/mariadb-5.5-46-linux-x86_64.tar.gz

    (2) tar xvf mariadb-5.5-46-linux-x86_64.tar.gz -C  /usr/local

    (3)cd /usr/local

        ls -sv mariadb-5.5.46-linux-x86_64 mysql

    (4)cd mysql

        chown -R root.mysql ./*

    (5)mkdir /mydata/data -p

        chown -R mysql.mysql /mydata/data

    (6)mkdir /etc/mysql

        cp support-files/my-large.cnf /etc/mysql/my.cnf

        vim /etc/mysql/my.cnf

            [mysqld]加三行

            datadir =/mydata/data

            innodb_file_per_table = ON

            skip_name_resolve = ON

    (7)bin/mysqld --help --verbose |less

    (8)scripts/mysql_install_db --user=mysql --datadir=/mydata/data

    (9)cp support-files/mysql.server /etc/rc.d/init.d/mysqld

    (10)chkconfig --add mysqld

            service mysqld start

    (11)测试

        /usr/local/mysql/bin/mysql 测试是否成功

        vim /etc/profile.d/mysql.sh

                export PATH=/usr/local/mysql/bin/:$PATH

    3、 编译安装httpd-2.4

    (1)yum install pcre-devel apr-devel apr-util-devel   openssl-devel

    (2)./configure --prefix=/app/httpd24

    sysconfdir=/etc/httpd24 --enable-so --enable-ssl --

    enable-rewrite --with-zlib --with-pcre --withapr=/usr

    --with-apr-util=/usr --enable-modules=most

    --enable-mpms-shared=all --with-mpm=prefork

    (3)make -j 4 && make install

    4、编译安装php-5.6

    相关包:

    (1)libxml2-devel bzip2-devel libmcrypt-devel (epel)

    (2)  ./configure --prefix=/app/php --withmysql=/usr/local/mysql

    --with-openssl --withmysqli=/usr/local/mysql/bin/mysql_config

    --enablembstring

    --with-png-dir --with-jpeg-dir --withfreetype-dir

    --with-zlib --with-libxml-dir=/usr

    enable-xml --enable-sockets --withapxs2=/app/httpd24/bin/apxs

    --with-mcrypt --withconfig-file-path=/etc

    --with-config-file-scandir=/etc/php.d

    --with-bz2

    (3) make -j 4 && make install

    5、编译安装php-7.1.7

    (1) ./configure --prefix=/app/php --enable-mysqlnd --

    with-mysqli=mysqlnd --with-openssl --with-pdomysql=mysqlnd

    --enable-mbstring --with-freetype-dir

    --with-jpeg-dir --with-png-dir --with-zlib --withlibxml-dir=/usr

    --enable-xml --enable-sockets --

    with-apxs2=/app/httpd24/bin/apxs --with-mcrypt --

    with-config-file-path=/etc --with-config-file-scandir=/etc/php.d

    --enable-maintainer-zts --disablefileinfo

    注意:php-7.0以上版本使用--enable-mysqlnd --withmysqli=mysqlnd,原--with-mysql不再支持。

    (2)为php提供配置文件

    cp php.ini-production /etc/php.ini

    (3) 编辑apache配置文件httpd.conf,以使apache支持php

    vim /etc/httpd24/conf/httpd.conf

    a.加二行

    AddType application/x-httpd-php .php

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

    b.定位至DirectoryIndex index.html

    修改为DirectoryIndex index.php index.html

    (4) apachectl restart

    ----------------------centos6上编译安装LAMP------------------------------

    mairadb:通用二进制格式,mariadb-5.5.56

    httpd:编译安装,httpd-2.4.27

    php5:编译安装,php-5.6.30

    Wordpress: 安装wordpress-4.8-zh_CN.tar.gz

    Xcache:编译安装xcache-3.2.0

    php5.4依赖于mariadb-devel包

    实现顺序:mariadb-->httpd-->php

    (1)编译httpd和二进制安装mariadb

    安装相关包

    新葡亰496net编写翻译安装,并各自设置event模块格局和FPM情势的PHP。bzip2-devel libxml2-devel libmcrypt-devel(epel源)

    (2)编译安装php

    cd php-5.6.30/

    ./configure --prefix=/app/php5 --withmysql=/usr/local/mysql

    --with-openssl --withmysqli=/usr/local/mysql/bin/mysql_config

    --enablembstring

    --with-freetype-dir --with-jpeg-dir

    with-png-dir --with-zlib --with-libxml-dir=/usr --

    enable-xml --enable-sockets --enable-fpm --withmcrypt

    --with-config-file-path=/etc/php5 --withconfig-file-scan-dir=/etc/php5.d

    --with-bz2

    (3) make -j 4 && make install

    (4)实现php的配置文件和服务脚本

    mkdir /etc/php5 /etc/php5.d/

    cd php-5.6.30/

    cp php.ini-production /etc/php5/php.ini

    cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm

    chmod x /etc/rc.d/init.d/php-fpm

    chkconfig --add php-fpm

    chkconfig --list php-fpm

    (5)编辑php配置文件

    cd /app/php5/etc

    cp php-fpm.conf.default php-fpm.conf

    vim /app/php5/etc/php-fpm.conf

    pm.max_children = 50

    pm.start_servers = 5

    pm.min_spare_servers = 2

    pm.max_spare_servers = 5 和pm.start_servers一致

    pid = /app/php5/var/run/php-fpm.pid

    (6) service php-fpm restart

    (7)修改httpd24的配置文件

    vim /app/apache24/conf/httpd.conf

    说明:启用httpd的相关模块

    在Apache httpd 2.4以后已经专门有一个模块针对FastCGI的实现,此模块为mod_proxy_fcgi.so,它其实是作为mod_proxy.so模块的扩充,因此,这两个模块都要加载去掉下面两行注释

    LoadModule proxy_module modules/mod_proxy.so

    LoadModule proxy_fcgi_module

    modules/mod_proxy_fcgi.so

    (8)添加如下二行

    AddType application/x-httpd-php .php

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

    (9)定位至DirectoryIndex index.html修改为:

    DirectoryIndex index.php index.html

    加下面两行

    ProxyRequests Off 关闭正向代理

    ProxyPassMatch ^/(.*.php)$

    fcgi://127.0.0.1:9000/app/httpd24/htdocs/$1

    service httpd24 restart

    (10)测试

    vim /app/httpd24/htdocs/index.php

    如下:

    <?php

    $link =

    mysql_connect('127.0.0.1','root','magedu');

    if ($link)

    echo "Success...";

    else

    echo "Failure...";

    mysql_close();

    phpinfo();

    ?>

    本文由新葡亰496net发布于网络数据库,转载请注明出处:新葡亰496net编写翻译安装,并各自设置event模块格

    关键词: