LAMP——最新版组合(CGI)
来源:互联网 发布:淘宝捡漏 编辑:程序博客网 时间:2024/06/06 00:52
一、安装部署
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\ Toolsyum -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.gztar xvf httpd-2.4.28.tar.gz mv apr-1.6.2 httpd-2.4.28/srclib/aprmv apr-util-1.6.0 httpd-2.4.28/srclib/apr-utilcd 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=preforkmake && make install
3.安装后的配置及服务开启
echo "PATH=/app/httpd-2.4/bin:$PATH" >> /etc/profile.d/newvar.shapachectl
二、服务器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.logchown 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-fpmchkconfig --add php-fpmchkconfig php-fpm on
4.配置文件
cp php-7.1.10/php.ini-production /etc/php/php.inicp 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.dcp www.conf.default www.confvim 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
- LAMP——最新版组合(CGI)
- LAMP中CGI排错
- lamp/lnmp优化4--CGI
- LAMP组合,黄金搭档
- CGI——万法归宗
- MAC 下安装配置 Docker(2016最新版)并搭建Lamp
- study-17:LAMP经典组合
- 嵌入式CGI开发之旅——CGI环境变量
- 嵌入式CGI开发之旅——CGI环境变量
- 嵌入式CGI开发之旅——CGI环境变量
- CGI——C程序设计
- python基础(五)——CGI编程
- LAMP转帖 最新版PHP+MySQL编程开发经典书籍
- Linux下最新版LAMP环境(源码版)搭建详细解读
- Linux运维学习笔记之十三:搭建LAMP经典组合(Linux Apache MySQL PHP)
- LAMP组合势不可挡 两年后市场占有率最高
- LAMP组合势不可挡 两年后市场占有率最高
- apache/C++ CGI动态页面 http://lamp.linux.gov.cn/Apache/ApacheMenu/howto/cgi.html
- The Monochrome Picture SGU
- switch case的定义
- js 判断是否为空对象
- 关于C++中的虚拟继承的一些总结
- MFS+Keepalived双机高可用热备方案
- LAMP——最新版组合(CGI)
- java 引用类别
- Android零基础入门第82节:Activity数据回传
- 腾讯云通信批量导入用户(用于给未登录过的用户发送消息)
- django-request对象
- 使用IntelliJ IDEA创建jar包及在集群上的提交方式
- github的简单使用(如何删除github仓库的项目)
- 建站选择Linux还是Windows操作系统?
- 升级项目到Vs2015版本的问题整理