LAMP——最新版组合(CGI)

一、安装部署

1.服务对应服务器

服务器A:centos7 IP:172.17.16.173

httpd服务

服务器B:centos7 IP:172.17.17.173

php服务

服务器C:centos6 IP:172.17.16.169

masql服务
centos只能安装mariadb5.5版本

2.安装源

链接: https://pan.baidu.com/s/1eSMrknK 密码: 5ccz

二、服务器A安装httpd服务(httpd2.4)

1.安装开发包

yum groupinstall Development\ Tools
yum  -y   install openssl-devel pcre-devel  expat-devel

2.编译安装

tar xf  apr-1.6.2.tar.gz 
tar xf  apr-util-1.6.0.tar.gz
tar xvf httpd-2.4.28.tar.gz 

mv apr-1.6.2 httpd-2.4.28/srclib/apr
mv apr-util-1.6.0  httpd-2.4.28/srclib/apr-util

cd httpd-2.4.28/

./configure --prefix=/app/httpd-2.4 --sysconfdir=/etc/httpd24 --enable-so --enable-ssl --enable-rewrite --with-zlib --with-pcre --with-included-apr --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork

make && make install

3.安装后的配置及服务开启

echo "PATH=/app/httpd-2.4/bin:$PATH" >>  /etc/profile.d/newvar.sh

apachectl

二、服务器C mysql数据库服务(maria5.5.7)

1.卸载已经有的maria程序

#查看是否已安装maria程序或mysql程序
    rpm -qa mysql*
    rpm -qa maria*
#如果提示有
     rpm -e `rpm -qa mysql*`
     或 rpm -e `rpm -qa maria*`

2.创建系统账户mysql

#创建系统账户
    useradd -r -m -d /var/lib/mysql -s /sbin/nologin  mysql
    #解释
        -r:指定创建系统用户
            默认系统用户没有家目录
        -m:为新用户创建家目录
        -d:指定家目录路径
        -s:指定新用户的shell
        mysql:用户名
家目录用来放mysql管理的数据文件
且家目录的权限的直接创建好属于 mysql的;不用再改权限

3.解压二进制文件到二进制程序的目标路径

#此文件是已经编译好的二进制文件,解压时尽量直接解压到目标二进制文件的路径下
tar -xvf mariadb-5.5.57-linux-x86_64.tar.gz -C /usr/local/ 

mv /usr/local/mariadb-5.5.57-linux-x86_64  /usr/local/mysql 
cd  /usr/local/mysql

4.配置文件创建

#配置文件都在解压后的support-files目录下;.cnf文件
#有很多中,可以根据不同使用场景选择
            my-innodb-heavy-4G.cnf、my-small.cnf、my-large.cnf
            my-huge.cnf  my-medium.cnf
#我选择my-huge.cnf 重量级的
mkdir /etc/mysql/
cp /usr/local/mysql/support-files/my-huge.cnf /etc/mysql/my.cnf 
#修改配置文件
vim /etc/mysql/my.cnf 
    在[mysqld]下方添加以下3#数据文件位置(必须)
        datadir         = /var/log/mariadb
    #实现一张表一个文件,可以便于管理(非必须)
        innodb_file_per_table   = on
    #实现 关闭名字的反向解析,可以优化速度(非必须)
        skip_name_resolve       = on
或者
    sed -r -i.bak "/^\[mysqld\]/s#.*#[mysqld] \n datadir = /var/lib/mysql \n innodb_file_per_table = on \n skip_name_resolve = on#" /etc/mysql/my.cnf

5.数据库文件创建

可以用脚本实现

#注意
    #在执行脚本时一定要在/usr/local/mysql/maria-10/路径下执行
    scripts/mysql_install_db 命令,不能使用./scripts/mysql_install_db 

#执行
    cd /usr/local/mysql/
    scripts/mysql_install_db --user=mysql --datadir=/var/lib/mysql

6.日志文件创建

touch /var/log/mysqld.log
chown  mysql:mysql   /var/log/mysqld.log

7.服务脚本创建

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

8.修改PATH路径

echo "PATH=/usr/local/mysql/bin/:$PATH" >> /etc/profile.d/newvar.sh 

9.启动mysql服务

因为mysqld的服务脚本是复制到了 /etc/init.d/目录下
所以不能使用centos7.3的systemctl命令启动服务
要使用service命令(centos7.3可以兼容centos的6命令)
    service mysqld start

10.安全脚本运行

mysql_secure_installation 

四、服务器C:php7.1服务

1.安装开发包

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

2.解压、编译、运行

tar xf php-7.1.10.tar.xz


./configure --prefix=/app/php \
--enable-mysqlnd \
--with-mysqli=mysqlnd \
--with-openssl \
--with-pdo-mysql=mysqlnd \
--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 \
--enable-maintainer-zts \
--disable-fileinfo 



make && make install

4.服务脚本

cp  sapi/fpm/init.d.php-fpm  /etc/init.d/php-fpm  
chmod u+x /etc/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm  on

4.配置文件

cp php-7.1.10/php.ini-production  /etc/php/php.ini
cp  php-7.1.10/sapi/fpm/php-fpm.conf  /app/php/etc/php-fpm.conf

五、连接httpd服务与php服务和mysql服务

1.配置httpd服务(服务器A)

vim /etc/httpd24/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.php
    ProxyRequests Off
    ProxyPassMatch  ^/(.*\.php)$ \
    fcgi://172.17.17.173:9000/app/php/var/run/$1

注意:

fcgi指向的地址一定要是php服务器中有.php 程序的地址

2.配置php服务接受httpd的访问(服务器B)

cd  /app/php/etc/php-fpm.d
cp www.conf.default  www.conf
vim www.conf  修改下面两行
    listen = 9000
    listen.allowed_clients = 172.17.16.173

3.mysql服务

创建属于php程序的数据库和数据库管理用户

在phpMyadmin页面中创建
或使用mysql命令创建
    create database wordpress
    GRANT all privileges on wordpress.* TO 'wordpress_user'@'%'IDENTIFIED BY 'passwd‘;

六、LAMP测试

1.测试脚本
vim /app/php/var/run/index.php

vim /app/php/var/run/index.php

<?php
  $mysqli=new mysqli("172.17.16.169","php","centos");
  if(mysqli_connect_errno()){
    echo "连接数据库失败!";
    $mysqli=null;
    exit;
  }
  echo "连接数据库成功!只能连接mysql";
  $mysqli->close();
?>   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值