Web服务器群集——源码部署搭建LAMP平台上线wordpress博客上线
Posted Pakho`
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Web服务器群集——源码部署搭建LAMP平台上线wordpress博客上线相关的知识,希望对你有一定的参考价值。
源码部署搭建LAMP平台上线wordpress博客上线
一、初识LAMP
1.1 LAMP的组成
- L:很显然L代表Linux系统,但此L需注意系统的版本号,如Centos6.9或Centos7.3;
- A:表示apache,在传统行业中,多数采用Apache服务器,因此也很有必要了解学习Apache;
- M:表示数据库,多数采用mysql或mariadb,作为专业的数据库工程师需经多年的历练;
- P:表示php、python、perl等等编程语言。
1.2 LAMP的作用
LAMP架构是协同工作的一整套系统和相关软件,可提供动态Web站点服务及其应用开发环境。具体包括Linux操作系统、Apache网站服务器、MySQL数据库服务器、PHP(或Perl、Python)网页编程语言。
1.3 LAMP的架构图
Linux+apache+mariadb+PHP组合的架构,架构图如下:
根据上图中访问数据流可知,处理一次动态页面请求,服务器主要经历:Apache处理请求——通过CGI接口访问PHP的的应用程序——PHP应用程序调用PHP解释器执行PHP代码——PHP程序访问调用数据库——最后给客户做反馈。
故在LAMP的环境机构中,apache、mariadb和php的主要功能分别如下
二、实验前的准备
1)虚拟机CentOS7
[root@611 ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
2)关闭防火墙
[root@611 ~]# systemctl stop firewalld
[root@611 ~]# systemctl disable firewalld
3)关闭selinux
[root@611 ~]# sed -ri 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
4)准备编译环境
[root@611 ~]# yum -y install make gcc gcc-c++ openssl openssl-devel expat-devel
三、Apache编译安装
3.1 解压Apache源码包
注意路径
[root@611 ~]# tar -xvzf httpd-2.4.38.tar.gz -C /usr/src
3.2 下载Apache依赖包及安装
安装完成后均可使用echo $?检查
3.2.1 解决Apr依赖
[root@611 ~]# wget http://archive.apache.org/dist/apr/apr-1.4.5.tar.gz
[root@611 ~]# tar -xvzf apr-1.4.5.tar.gz -C /usr/src/
[root@611 ~]# cd /usr/src/apr-1.4.5/
[root@611 apr-1.4.5]# ./configure --prefix=/usr/local/apr #进行配置并指明安装路径
[root@611 apr-1.4.5]# make && make install #安装
3.2.2 解决Apr-util依赖
[root@611 ~]# wget http://archive.apache.org/dist/apr/apr-util-1.3.12.tar.gz
[root@611 ~]# tar -xvzf apr-util-1.3.12.tar.gz -C /usr/src/
[root@611 ~]# cd /usr/src/apr-util-1.3.12/ #进入解压后的路径
[root@611 apr-util-1.3.12]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/ #进行配置并指明安装路径
[root@611 apr-util-1.3.12]# make && make install #安装
3.2.3 解决Pcre依赖
执行./configure 可能会出现权限不够
执行如下命令:chmod +x configure
[root@611 ~]# wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.10/pcre-8.10.zip
[root@611 ~]# unzip pcre-8.10.zip #解压
[root@611 ~]# mv pcre-8.10 /usr/src/ #移动文件至/usr/src
[root@611 ~]# cd /usr/src/pcre-8.10/ #进入解压后的路径
[root@611 pcre-8.10]# ./configure --prefix=/usr/local/pcre #进行配置并指明安装路径
[root@611 pcre-8.10]# make && make install #安装
3.3 安装Apache
[root@611 ~]# cd /usr/src/httpd-2.4.38/ #进入解压后的路径
[root@611 httpd-2.4.38]# ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-list --enable-cgi --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre #进行配置并指明安装路径
[root@611 httpd-2.4.38]# make && make install #安装
上述配置命令中,各选项的含义如下
- prefix:指定将httpd服务程序安装到哪个目录下,如/usr/local/httpd
- enable-so:启用动态加载模块支持,使httpd具备进一步扩展功能的能力
- enable-rewrite:启用网页地址重写功能,用于网站优化及目录迁移维护
- enable-charset-list:启用字符集支持,以便支持使用各种字符集编码的网页
- enable-cgi:启用CGI脚本程序支持,便于扩展网站的应用访问能力
3.4 确认Apache安装结果
[root@611 ~]# ls /usr/local/httpd/
3.5 优化执行路径
[root@611 ~]# ln -s /usr/local/httpd/bin/* /usr/local/bin #将bin下所有内容配置环境变量
本行意为在任何路径下都能执行启动Apache命令
3.6 为Apache修改域名
[root@611 ~]# vim /usr/local/httpd/conf/httpd.conf
...
ServerName www.pakho.com:80 #将默认的域名修改公司域名
...
3.7 添加httpd系统服务
[root@611 ~]# vim /usr/lib/systemd/system/httpd.service #写一个centos7的方式的启动脚本
[Unit]
Description=The Apache HTTP Server
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/httpd/logs/httpd.pid
ExecStart=/usr/local/httpd/bin/apachectl $OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RetartSec=42s
[Install]
WantedBy=graphical.target
3.8 开启Apache服务并访问主页
[root@611 ~]# systemctl start httpd
浏览器访问192.168.100.10提示 It works编译安装完成
3.9 附1:httpd命令的其他参数
[root@611 ~]# apachectl -h
3.10 附2:主要目录和文件
- 服务目录:/usr/local/httpd/
- 主配置文件:/usr/local/httpd/conf/httpd.conf
- 网页目录:/usr/local/httpd/htdocs/
- 服务脚本:/usr/local/httpd/bin/apachectl
- 执行程序:/usr/local/httpd/bin/httpd
- 访问日志: /usr/local/httpd/log/access_log
- 错误日志: /usr/local/httpd/log/error_log
四、MySQL编译安装
4.1 安装编译环境
[root@611 ~]# rpm -qa mysql-server mysql #检查MySQL软件安装情况
[root@611 ~]# yum -y install ncurses-devel
[root@611 ~]# tar -xvzf cmake-2.8.6.tar.gz -C /usr/src/
[root@611 ~]# cd /usr/src/cmake-2.8.6/
[root@611 cmake-2.8.6]# ./configure
[root@611 cmake-2.8.6]# gmake && gmake install
4.2 添加MySQL用户和组
[root@611 ~]# groupadd mysql #准备mysql组
[root@611 ~]# useradd -M -s/sbin/nologin mysql -g mysql #创建一个用户属于mysql组不允许登陆系统
4.3 MySQL安装
[root@611 ~]# tar -xvzf mysql-5.6.36.tar.gz -C /usr/src/
[root@611 ~]# cd /usr/src/mysql-5.6.36/
[root@611 mysql-5.6.36]# pwd
/usr/src/mysql-5.6.36
[root@611 mysql-5.6.36]# cmake \\
> -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \\
> -DSYSCONFDIR=/etc \\
> -DDEFAULT_CHARSET=utf8 \\
> -DDEFAULT_COLLATION=utf8_general_ci \\
> -DWITH_EXTRA_CHARSETS=all
[root@611 mysql-5.6.36]# make && make install
4.4 改变数据库的属主
[root@611 ~]# chown -R mysql:mysql /usr/local/mysql #改变数据库的属主 属组,对数据库进行权限设置
4.5 建立MySQL配置文件my.cnf
[root@611 mysql]# mv /etc/my.cnf ~ # 移动样例文件至家目录
[root@611 ~]# cp /usr/src/mysql-5.6.36/support-files/my-default.cnf /etc/my.cnf
4.6 初始化数据库
[root@611 ~]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
4.7 为MySQL优化启动路径
[root@611 mysql]# ln -s /usr/local/mysql/bin/* /usr/local/sbin #设置环境变量
[root@611 mysql]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
#这样就可以使用systemctl start mysql来启动数据库否则得使用/usr/local/mysql/bin/mysqld
[root@611 mysql]# chmod +x /etc/init.d/mysqld
[root@611 mysql]# chkconfig --add mysqld #添加mysql服务
[root@611 mysql]# chkconfig mysqld on #开机自动启动mysql服务
4.8 开启数据库服务
[root@611 mysql]# systemctl start mysqld
4.9 登陆数据库服务
4.10 检查数据库状态及库
mysql> show databases;
[root@611 mysql]# systemctl status mysqld
五、php编译安装
5.1 源码安装php部署配置
[root@611 ~]# yum -y install zlib-devel libxml2-devel xz-devle #安装依赖包
[root@611 ~]# tar -xvzf php-5.5.38.tar.gz -C /usr/src/
[root@611 ~]# cd /usr/src/php-5.5.38/
[root@611 php-5.5.38]# ./configure --prefix=/usr/local/php5 \\ #表示php的安装
> --with-apxs2=/usr/local/httpd/bin/apxs \\ #注入模块,将php与apache结合
> --with-mysql=/usr/local/mysql \\ #表示 php与mysql连接,也表示一个接口
> --with-mysqli=/usr/local/mysql/bin/mysql_config \\
> --with-config-file-path=/usr/local/php5 \\ #这里表示php配置文件存放位置
> --enable-mbstring #启用多字符集的一个模块
[root@611 php-5.5.38]# make && make install
[root@611 php-5.5.38]# cp php.ini-development /usr/local/php5/
5.2 生成配置文件
[root@611 php-5.5.38]# cd /usr/local/php5/
[root@611 php5]# mv php.ini-development php.ini
5.3 添加Apache支持
[root@611 php5]# vim /usr/local/httpd/conf/httpd.conf
#添加如下内容
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
<IfModule mime_module>
Addtype application/x-httpd-php .php
</IfModule>
5.4 重启Apache服务
[root@611 php5]# systemctl restart httpd.service
5.5 创建测试界面
[root@611 php5]# vim /usr/local/httpd/htdocs/index.php
<?php
phpinfo(); #查看php版本信息
?>
http://192.168.100.10/
测试完成
部署wordpress博客
[root@611 ~]# mysql -u root -p'WANGyuCHEN0403'
mysql> create database wordpress;
mysql> grant all privileges on wordpress.* to 'he'@'localhost' identified by '123';
mysql> flush privileges;
[root@611 ~]# cd /usr/local/httpd/htdocs/
[root@611 htdocs]# rm -rf *
[root@611 htdocs]# mv /root/wordpress-4.9.4-zh_CN.tar.gz .
[root@611 htdocs]# tar -xvzf wordpress-4.9.4-zh_CN.tar.gz
[root@611 htdocs]# rm -rf wordpress-4.9.4-zh_CN.tar.gz
[root@611 htdocs]# mv wordpress/* .
http://192.168.100.10
已成功登录
输入我们创建的数据库用户
根据提示创建一个php文件
[root@611 htdocs]# vim wp-config.php
#根据提示复制提示内容
实验成功
以上是关于Web服务器群集——源码部署搭建LAMP平台上线wordpress博客上线的主要内容,如果未能解决你的问题,请参考以下文章