搭建LMAP架构
一、LAMP简介:
(1) apache主要实现如下功能:
- 处理http的请求、构建响应报文等自身服务;
- 配置让Apache支持PHP程序的响应(通过PHP模块或FPM);
- 配置Apache具体处理php程序的方法,如通过反向代理将php程序交给fcgi处理。
(2)mariadb主要实现如下功能:
- 提供PHP程序对数据的存储;
- 提供PHP程序对数据的读取(通常情况下从性能的角度考虑,尽量实现数据库的读写分离)。
(3)php主要实现如下功能:
- 提供apache的访问接口,即CGI或Fast CGI(FPM);
- 提供PHP程序的解释器;
- 提供mairadb数据库的连接函数的基本环境。
二、构建LAMP架构
安装Apache
注意:下面两个插件是httpd2.4以后的版本所需要
- apr-1.6.2.tar.gz
- apr-util-1.6.0.tar.gz
解压相关文件,并将两个插件,移到解压后的 httpd-2.4.29文件夹中
tar xf apr-1.6.2.tar.gz
tar xf apr-util-1.6.0.tar.gz
tar xf httpd-2.4.29.tar.gz
mv apr-1.6.2 httpd-2.4.29/srclib/apr
mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util
安装相关编译工具,c、c++
\ :表示换行
yum -y install \
gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl
来到 http-2.4.29这个文件路径下
cd httpd-2.4.29
./configure 编译文件
./configure \
--prefix=/usr/local/httpd \
--enable-so \
--enable-rewrite \
--enable-charset-lite \
--enable-cgi
保持路径不变,进行make配置
make
make配置完成后,进行make install 安装,同理,路径不变
make install
修改配置文件
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
//复制一份文件到/etc/init.d/httpd 文件中
vim /etc/init.d/httpd
//进入文件修改
添加以下两行注释:
# chkconfig: 35 85 21
//35级别自动运行 第85个启动 第21个关闭
# description: Apache is a World Wide Web server
chkconfig --add httpd //将httpd加入到SERVICE管理器
vim /usr/local/httpd/conf/httpd.conf 进行相关配置,添加一下两行
ServerName www.yun.com:80(这个是自定义的,80表示的是端口)
Listen 192.168.175.130:80(监听地址,这个根据自己配置环境自定义,80表示端口)
创建两个软连接:
ln -s /usr/local/httpd/conf/httpd.conf /etc/
ln -s /usr/local/httpd/bin/* /usr/local/bin/
关闭防火墙,开启服务即可
systemctl stop firewalld.service //关闭防火墙
setenforce 0
service httpd start //开启服务
可以使用以下两个命令,查看是否成功
httpd -t
apachectl -t
安装MYSQL
首先安装环境包
yum install -y ncurses-devel autoconf
解压缩包
tar xzvf mysql-5.6.26.tar.gz
切换到 mysql-5.6.26这个文件的路径下
cd mysql-5.6.26
保存路径不变,进行cmake配置
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DSYSCONFIDIR=/etc \
-DMYSQL_DATADIR=/home/mysql/ \
-DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock
同路径下,进行make编译
make
保持路径不变,进行make install安装
make install
修改配置文件,并赋予权限
cp support-files/my-default.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
chkconfig --add /etc/init.d/mysqld
chkconfig mysqld --level 235 on
环境变量更改
echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
source /etc/profile
echo $PATH
添加MySQL用户,并指定属组
useradd -s /sbin/nologin mysql
chown -R mysql:mysql /usr/local/mysql/
切换到 /usr/local/mysql/scripts/mysql_install_db 目录下,进行数据库配置
cd /usr/local/mysql/scripts/mysql_install_db
--user=mysql \
--ldata=/var/lib/mysql \
--basedir=/usr/local/mysql \
--datadir=/home/mysql
在 /etc/init.d/mysqld 文件中,添加如下两行:
vim /etc/init.d/mysqld指定路径:
basedir=/usr/local/mysql
datadir=/home/mysql
开启数据库服务
service mysqld start
安装PHP
安装相关环境:
yum -y install \
gd \
libpng \
libpng-devel \
pcre \
pcre-devel \
libxml2-devel \
libjpeg-devel
解压文件
tar xjvf php-5.6.11.tar.bz2
切换到 php-5.6.11 这个文件的路径下
cd php-5.6.11
保持路径不变,进行./configure配置
./configure \
--prefix=/usr/local/php5 \
--with-gd \
--with-zlib \
--with-apxs2=/usr/local/httpd/bin/apxs \
--with-mysql=/usr/local/mysql \
--with-config-file-path=/usr/local/php5 \
--enable-mbstring
同路径,进行make编译
make
同路径,进行make install安装
make install
复制相关文件,进行配置,创建软连接
cp php.ini-development /usr/local/php5/php.ini
ln -s /usr/local/php5/bin/* /usr/local/bin/
ln -s /usr/local/php5/sbin/* /usr/local/sbin/
修改 /etc/httpd.conf 文件
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
//在空白处新增以上两行
修改html,并用网页测试
DirectoryIndex index.php index.html
vi /usr/local/httpd/htdocs/index.php
<?php
phpinfo();
?>
// 在网页测试“http://192.168.80.182/index.php”
安装论坛
chown -R daemon ./config
chown -R daemon ./data
chown -R daemon ./uc_client
chown -R daemon ./uc_server/data