1.LAMP简介
lamp是互联网上一套最基本的软件组合搭配起来的环境,用来实现网络服务,大家表面上看到用浏览器上网,后台就是N台服务器在跑着这一套环境,当然技术在变迁,现在大部分互联网公司所用的环境非常复杂,但根本都是这原理,就连有着最顶级复杂环境的淘宝在十年前,也是从一台服务器上跑着LAMP开始,发挥到现在的几万台服务器一起
L:服务器的最基本操作系统,Linux
A: 提供web服务的最知名软件,apache; 现在有更高性能的,比较流行的nginx,所有现在经常看到组合是lnmp
M:mysql,与mariadb之类的数据库系统
P:php,perl,python等后台编程语言
2.实验环境
这里用最新版centos7.3系统做为实验环境,如果不爱折腾,只是为了搭一个个人博客网站 ,那下面内容对你没有用,你可以安装系统集成好的所有软件 ,就是版本比较旧,然后自己去阿里云买域名,云主机,按着网上现成的操作,很快就能搭建出一个漂亮的个人博客
去各大官网下载最新版的原码包
httpd-2.4.27.tar.bz2 mariadb-10.2.7-linux-x86_64.tar php-7.1.7.tar.bz2 wordpress-4.8-zh_CN.tar.gz
下载地址可以百度,如果第一步原码包都下不了,后面的可以不看了,步骤很烦锁,起码的动手能力肯定要有
编译apache
- 解压原码包 tar xvf httpd-2.4.27.tar.bz2
- 准备基础包pcre-devel openssl-devel development toos,在编译过程中如果提示出错,少什么包再装什么包
- 进到解压好的文件httpd-2.4.27文件中,执行下面的代码
- ./configure --prefix=/usr/local/http24 --sysconfdir=/etc/httpd24 --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork这里都是定义的关于这个软件的一些特性,比如启用什么功能,官方文档上都有介绍,也可以直接复制这个
- 提示出错,安装二个包即可yum -y install apr-devel apr-util-devel
- 然后再重复执行上面那代码,此时只要你系统不是基于最小化安装,那应该就没有问题了
- make && make install 编译即可
- 关闭防火墙iptables -F ,与禁用setenforce 0 ;进行测试httpd服务,没有问题。
二进制编译mariadb
- 同样的先解压,这次是二进制编译,所有解压路径必须是/usr/local
- 创建软链接ln -s maridb-10.2.7-linux-x86 mysql
- 修改权限 chown -R .mysql mysql/*
- 创建用户mysql useradd -r mysql -s /sbin/nologin -d /app/mysqldb -m
- 运行安装脚本scripts/mysql_install_db --datadir=/app/mysqldb --user=mysql
- 创建配置文件mkdir /etc/mysql
- cp support-files/my-huge.cnf /etc/mysql/my.cnf并修改以下地方
- cp support-files/mysql.server /etc/init.d/mysqld复制样本并创建启动脚本
- 将执行程序路径加入到/etc/profile.d/app.sh中
- mkdir /var/log/mariadb/ touch /var/log/mariadb/mariadb.log chown mysql /var/log/mariadb/mariadb.log
- service mysqld start启动数据库成功
- 登录数据库为将来用到的软件wordpress创建表单,与帐号
- create database blogdb;
- grant all on blogdb.* to wpuser@'172.16.%.%' identified by "123456";
编译php
- 老步骤,先解压
- 安装需求包,省的一会报错yum -y install libxm12-devel bzip2-devel libmcrypt-devel
- 进到该目录中执行下面代码,同样是一些特性定义
- ./configure --prefix=/app/php --enable-mysqlnd --with-mysqli=mysqlnd --with-openssl --enable-mbstring --with-png-dir --with-jpeg-dir --with-freetype-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --with-apxs2=/app/httpd24/bin/apxs --with-mcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2
- make && make install
- cp php.ini-production /etc/php.ini复制模板作为Php的配置文件
- 修改appache的配置文件/etc/httpd24/httpd.conf添加下面的内容
- addtype application/x-httpd-php .php
- addtype application/x-httpd-php-source .phps
- 最后重启服务,写一段php代码,测试apache---php---mysql三者的连通性
- vim /app/httpd24/htdocs/index.php
<?php
$mysqli=new mysqli("172.16.28.28","wpuser","123456");
if(mysqli_connect_errno()){
echo "连接数据库失败!";
$mysqli=null;
exit;
}
echo "连接数据库成功!";
$mysqli->close();
?> - 重启服务
- 连接成功
部署wordpress应用
- 前面工作都顺利完成的话,那环境已搭建完成了,下面就是在这环境之上部署应用了,下载最新版wordpress
- 给apache帐号添加访问wordpress目录的权限
- setfacl -m u:apache:rwx bg/
- 根据向导完成注册,结束!!