在centos6.9上编译安装LAMP并搭建个人博客

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介:

准备阶段:

1、两台安装了centos6.9的机器,A和B;

A:192.168.1.100

B:192.168.1.102

其中A机器上跑http和php,B机器是mysql服务器

2、准备软件包

apr-1.6.2.tar.gz     

apr-util-1.6.0.tar.gz   

#Apache可移植运行库,为上层应用程序提供一个可以跨越多操作系统平台的底层支持接口库

httpd-2.4.27.tar.bz2       #6.9上默认http是2.2版本,本次编译2.4版本         

php-5.6.31.tar.bz2        

mariadb-5.5.57-linux-x86_64.tar.gz   #即mysql数据库

wordpress-4.8.1-zh_CN.zip   #用PHP语言开发的博客平台

实验目标:

搭建个人博客,并能够正常访问


步骤1、

在B机器上以二进制方式安装mariadb

cd /usr/local/src

tar xvf mariadb-5.5.57-linux-x86_64.tar.gz  -C /usr/local/

#二进制安装事前已经编译好规则,所以必须指定目录

cd /usr/local/

ln -vs mariadb-5.5.57-linux-x86_64/ mysql

#根据编译规则必须命名为mysql,本处使用符号连接,也可以直接重命名为mysql,一样效果

useradd -r -m -d /app/mysqldb -s /sbin/nologin mysql 

#对数据库的操作,我们指定专门用户

cd mysql/

scripts/mysql_install_db --datadir=/app/mysqldb --user=mysql

#datadir指定数据库存放数据的位置

mkdir /etc/mysql

cp support-files/my-large.cnf   /etc/mysql/my.cnf

#模板,修改作为mysql的配置文件,修改内容如下

vim /etc/mysql/my.cnf

[mysqld]

datadir = /app/mysqldb

#在配置文件中指定数据存放的目录

innodb_file_per_table = ON

#数据库中单独使用一份文件记录一个表

cp support-files/mysql.server /etc/init.d/mysqld

chkconfig --add mysqld

chkconfig --list 

#为了省事将之前安装的mysql服务配置文件复制一份,并加入服务列表

service mysqld start

#此时开启我们二进制安装的mysql会失败,原因是缺少文件,如下

touch /var/log/mysqld.log

chown mysql /var/log/mysqld.log

#由于缺少日志文件导致服务启动失败

#还得修改日志文件所有者,保证mysql用户有权限访问此文件

service mysqld start

#此时启动数据库就会会成功

vim /etc/profile.d/mysql.sh

export PATH=/usr/local/mysql/bin/:$PATH

. /etc/profile.d/mysql.sh

#添加PATH环境变量,并使之生效

mysql_secure_installation

#初始化数据库,设置root密码等信息

#mysql的root与linux的root没有任何关系

mysql -uroot -pcentos

#root的登陆信息

create datebase wpdb;

#创建数据库wpdb,其作用是为以后搭建的博客提供数据库存储

grant all on wpdb.* to wpuser@'192.168.1.%' identified by '123456';

#创建用户并授权,用户名与主机构成整个用户信息,%表示所有

步骤2、

在A机器上编译安装http

cd /usr/local/src

yum groupinstall "development tools"

yum install openssl-devel pcre-devel expat-devel

#为了编译安装顺利进行,提前把开发包安装好

tar xvf apr-1.6.2.tar.gz

tar xvf apr-util-1.6.0.tar.gz

tar xvf httpd-2.4.27.tar.bz2

cp -r apr-1.6.2 httpd-2.4.27/srclib/apr

cp -r apr-util-1.6.0 httpd-2.4.27/srclib/apr-util

#将apr整合到http中

cd /usr/local/src/httpd-2.4.27/

./configure --prefix=/app/httpd24 \ #http的安装目录

--enable-so  \ #启动模块动态装卸载

--enable-ssl  \ #启动ssl功能

--enable-rewrite  \ #启动url重写功能

--with-zlib  \  #支持数据包压缩

--with-pcre \ #支持正则表达式

--with-included-apr \ 

--enable-modules=most  \ #启用的模块

--enable-mpms-shared=all  \ #以共享方式编译的模块

--with-mpm=prefork #指定http的工作模式为prefork

#编译前制定一些配置规则

#以上选项可以使用./configure --help来获得更多帮助信息

make -j 4 && make install

#编译安装

vim /etc/profile.d/lamp.sh

PATH=/app/httpd24/bin/:$PATH

. /etc/profile.d/lamp.sh

cp  /etc/init.d/httpd  /etc/init.d/httpd24

#复制http的配置文件,并在此基础上修改为我们需要的

vim /etc/init.d/httpd24

apachectl=/app/httpd24/bin/apachectl #apachectl生效的目录,配置的时候就已经指定好了,下同

httpd=${HTTPD-/app/httpd24/bin/httpd} 

prog=httpd

pidfile=${PIDFILE-/app/httpd24/logs/httpd.pid} #http的进程id存放目录

lockfile=${LOCKFILE-/var/lock/subsys/httpd24}  #锁文件指定的目录


chkconfig --add httpd24

chkconfig --list httpd24

#将我们编译的httpd24添加到服务集中,以后就可以使用service开启或者关闭

service httpd24 start


步骤3、

在A机器上编译安装php

yum install libxml2-devel bzip2-devel libmcrypt-devel

tar xvf php-5.6.31.tar.xz



cd /usr/local/php-5.6.31

./configure --prefix=/app/php \ #php安装目录

--with-mysql=/usr/local/mysql \ #php安装目录,对mysql的支持

--with-mysqli=/usr/local/mysql/bin/mysql_config \ 

#mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定

--with-openssl \ #支持ssl

--enable-mbstring \ #支持多字节、字符串

--with-png-dir \ #支持png格式的图片

--with-jpeg-dir \ #支持jpeg格式的图片

--with-freetype-dir \ #支持freetype字体库

--with-zlib \ #支持压缩

--with-libxml-dir=/usr \ #支持libxml

--enable-xml \ #支持xml

--enable-sockets \ #支持套接字

--with-apxs2=/app/httpd24/bin/apxs \ 

#整合 apache,apxs功能是使用mod_so中的LoadModule指令,加载指定模块到 apache,要求 apache 要打开SO模块

--with-mcrypt \ #mcrypt算法扩展

--with-config-file-path=/etc \ #配置文件路径,即php.ini路径

--with-config-file-scan-dir=/etc/php.d \ #

--with-bz2 #支持压缩


make -j 4 && make install

#此过程与http编译安装类似,具体参数可以用 ./configure --help来获得帮助信息

vi /etc/profile.d/lamp.sh

PATH=/app/php/bin:/app/httpd24/bin/:/usr/local/mysql/bin/:$PATH

.  /etc/profile.d/lamp.sh

cp php.ini-production /etc/php.ini

#复制模板,php.ini即php的主配置文件,不用修改

vim /app/httpd24/conf/httpd.conf

#在文件尾部加两行

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps

#凡是以php、phps结尾的文件就会调用php程序

#修改下面行

<IfModule dir_module>

   DirectoryIndex index.php index.html

</IfModule>

#http的主页面是index.php,谁在前谁优先

service httpd24 restart


步骤4、

测试数据库连接

vim /app/httpd24/htdocs/index.php

<html><body><h1>It works!</h1></body></html>

<?php

$mysqli=new mysqli("192.168.1.102","wpuser","123456");

if(mysqli_connect_errno()){

echo "连接数据库失败!";

$mysqli=null;

exit;

}

echo "连接数据库成功!";

$mysqli->close();

phpinfo();


?>

#以上php程序仅作为测试连接数据库用,没别的含义


步骤5、

配置wordpress

tar xvf /usr/local/src/wordpress-4.8.1-zh_CN.tar.gz  -C /app/httpd24/htdocs

#wordpress目录必须放在http的主目录下

cd /app/httpd24/htdocs

mv wordpress/ blog/

#为了方便记忆,将wordpress重命名为blog,以后在浏览器访问的话直接使用blog即可

cd /app/httpd24/htdocs/blog/

cp wp-config-sample.php  wp-config.php

vim wp-config.php

#编辑wordpress的配置文件,主要修改与数据库连接信息

define('DB_NAME', 'wpdb');


/** MySQL数据库用户名 */

define('DB_USER', 'wpuser');

#为wordpress设置的数据库账户

/** MySQL数据库密码 */

define('DB_PASSWORD', '123456');

#为wordpress账户设置的密码

/** MySQL主机 */

define('DB_HOST', '192.168.1.102');

#数据库主机地址


步骤6、

测试


wKiom1ngapWRmigCAAIccbLjYlA182.png

在浏览器输入 http://192.168.1.100/blog/

完成上述注册信息后就可以使用和管理个人博客了


wKiom1ngauKhIWiVAAeFTkJ9UV8158.png

个人博客http://192.168.1.100/blog/


wKiom1ngauPhqX4rAAM7TthimzQ373.png

博客管理界面http://192.168.1.100/blog/wp-admin/

本文转自  a_pan  51CTO博客,原文链接:http://blog.51cto.com/panpangao/1972138



相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
Linux 开发工具 C语言
Centos8下编译安装最新版ffmpeg解决方案(含Centos8换源阿里云)
Centos8下编译安装最新版ffmpeg解决方案(含Centos8换源阿里云)
177 3
|
18天前
|
Shell
CentOS6.5自动化安装LAMP脚本
CentOS6.5自动化安装LAMP脚本
|
1月前
|
Linux Apache
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
21 0
|
1月前
|
关系型数据库 MySQL Linux
Centos7 yum安装lAMP 环境 php版本5.6.38 mysql版本5.7.22
Centos7 yum安装lAMP 环境 php版本5.6.38 mysql版本5.7.22
28 0
|
8月前
|
关系型数据库 MySQL Linux
|
4月前
|
Linux C语言
centos 7 下使用高版本gcc编译安装
centos 7 下使用高版本gcc编译安装
125 0
|
5月前
|
Linux Python
百度搜索:蓝易云【CentOS 7.8编译安装python 3.7教程。】
请注意,编译安装Python可能需要一些时间,并需要较高的系统性能和网络连接。在安装过程中,请确保按照提示和错误信息进行相应的操作和解决方案。
87 1
|
5月前
|
SQL 关系型数据库 MySQL
centos编译安装mariadb
一般我不太愿意用mysql,那个玩意,有的时候不太友好。 我还是比较喜欢mariadb。
144 0
|
5月前
|
关系型数据库 MySQL Shell
centos编译安装mysql
centos编译安装mysql
145 0
|
5月前
|
应用服务中间件 Linux Shell
centos编译安装nginx(2)
安装成功之后,nginx的配置文件,在安装目录(/usr/local/nginx)下的conf目录下的nginx.conf中。 Php-fpm在安装的时候已经配置过了,这里不再赘述
59 0
centos编译安装nginx(2)

热门文章

最新文章