纯手工编译安装LAMP环境并在上面实现个人博客

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这里都是定义的关于这个软件的一些特性,比如启用什么功能,官方文档上都有介绍,也可以直接复制这个
Paste_Image.png
  • 提示出错,安装二个包即可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并修改以下地方
Paste_Image.png
  • 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/
Paste_Image.png
  • 根据向导完成注册,结束!!
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容