今天继续给大家介绍Linux运维相关知识,本文主要内容是LAMP源码部署实战。
阅读本文,您需要对Linux源码安装有一定的了解,如果您对此还存在困惑,欢迎查阅我博客内的其他文章,相信您一定会有所收获!
LAMP源码安装原理
Linux 源码包软件安装操作与实战
一、LAMP安装准备
在进行LAMP架构部署之前,我们首先要准备一台干净的系统,该系统应该未安装过Apache、MySQL等软件同时,还应该安装好以下几个工具:
yum install -y gcc gcc-c++ openssl-devel cmake ncurses-devel libxml2-devel
1
其次,我们要上传LAMP的相关源码包,除了Apache、MySQL、PHP三个源码包外,我们还需要准备好三个依赖包,分别是Apache的依赖包——apr、apr-utils和pcre。在本实验中,上述安装包的版本分别是:
apr:1.5.2
apr-utils:1.5.4
apache:2.4.16
mysql:5.6.26
pcre:8.37
php:5.6.13
上述源码包需要全部上传到设备上,如下所示:
上述源码包的下载网页为:
apr、apr-utils:http://apr.apache.org/
apache:http://httpd.apache.org/
mysql:http://dev.mysql.com/downloads/mysql/
pcre:http://pcre.org/
php:http://php.net/downloads.php
注:如果链接失效,可以在百度直接搜索官网,然后再官网下载即可。
二、Apache源码安装
(一)apr和apr-utils依赖包安装
在进行Apache的源码安装部署前,我们需要首先安装Apache的依赖包——apr、apr-utils和pcre。
由于是源码安装部署,因此apr、apt-utils和pcre必须要经过预编译、编译和安装三个阶段,apr的预编译需要进入到解压后的源码包目录下,执行命令:
./configure --prefix=/usr/local/apr
1
在这里,–prefix参数指明了apr的安装目录,在本实验中,所有的软件包都会安装到/usr/local/目录下的同名目录中。使用echo $?,如果返回为0,则表示预编译成功!(只有完成预编译后才可以进行下步操作,在后面的检验效果与此相同,就不在每次检测时进行赘述了)在预编译成功后,可以执行命令:
make -j 4&& make install
1
其中make为编译,make install为安装,-j 4表示同时启用4个进程执行编译操作,会加快编译进入,后面的编译和安装的命令也大致如此。一般情况下,只要预编译成功,那么编译和安装也不会有太大的问题。
apr-utils的预编译也需要进入到解压后的源码包目录下,执行命令:
./configure --prefix=/usr/local/apr-utils --with-apr=/usr/local/apr
1
在成功进行预编译后,还是执行命令:
make -j 4&& make install
1
以完成编译和安装操作。
pcre的预编译也需要进入到解压后的源码包目录下,执行命令:
./configure --prefix=/usr/local/pcre
1
在成功进行预编译后,还是执行命令:
make -j 4&& make install
1
以完成编译和安装操作。
(二)apache源码安装
在完成Apache的依赖包安装后,我们即可进行apache的源码安装了。与Apache的依赖安装过程不同,apache的预编译过程需要有很多的命令:
./configure --prefix=/usr/local/httpd --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-utils --with-pcre=/usr/local/pcre --enable-so --enable-ssl --enable-rewrite --enable-mpms-shared=all --enable-modules=most
1
上述各参数的作用为:
–with-apr、–with-apr-util、–with-pcre:指定Apache的依赖apr、apr-util和pcre的安装位置,
–prefix:指定apache的安装位置
–enable-so、–enable-ssl、–enable-mpms-all、–enable-rewrite、–enable-modules=most表示安装apache不同的模块。
在成功进行预编译后,还是执行命令:
make -j 4&& make install
1
以完成编译和安装操作。
(三)配置apache启动脚本
由于我们是采用源码的方式安装的Apache,因此我们虽然已经安装好了apache,但是其启动命令在/usr/local/httpd/bin/目录下,启动命令为httpd,我们接下来需要配置apache的启动脚本。首先,打开/usr/local/httpd/bin/apachectl,在第二行插入以下内容:
chkconfig 2345 64 36
1
choconfig用于配置apache的开启自启顺序,2345是指当开机以2、3、4、5级别时自启动,64是指apache在网卡启动后进行启动,36是指在网卡关闭后进行关闭。当然,如果不想配置Apache的开机自启,可以不配置上述内容。
修改后的配置文件如下所示:
然后,我们把Apache的该配置文件复制到/etc/init.d下,并重命名为httpd,这样,我们就可以执行命令:
systemctl start httpd
1
或者是:
/etc/init.d/httpd start
1
来开启Apache服务了。
(四)配置Apache启动用户
此外,虽然我们此时已经可以启动Apache了,但是此时Apache的启动是以daemon用户的身份来启动的,源码安装apache不会自动创建apache用户,因此,我们还需要为Apache创建启动用户。
执行命令:
useradd -M -s /sbin/nologin apache
1
可以创建Apache的启动用户,然后打开Apache的主配置文件:/usr/local/httpd/conf/httpd.conf,找到其中的User和Group参数,将默认的daemon用户改为apache,这样,当我们再次启动Apache时,就会以刚刚我们创建的apache用户来运行了。
三、MySQL源码安装
(一)安装MySQL
在进行MySQL的源码安装之前,我们需要首先创建运行MySQL的用户,执行命令:
useradd -M -s /sbin/nologin mysql
1
与Apache不同,MySQL采用的cmake的编译和安装方式,其预编译命令如下:
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1-DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL-USER=mysql
1
上述参数作用如下:
1、DCMAKE_INSTALL_PREFIX用于指定MySQL的安装目录。
2、DDEFAULT_CHARSET用于指定默认字符集。
3、DMYSQL_UNIX_ADDR用于指定服务器与本地客户端进行通信的Unix套接字文件。
4、DDEFAULT_COLLATION用于指定默认的字符校对集。
5、DWITH_EXTRA_CHARSETS用于指定MySQL支持所有字符集。
6、DWITH_MYISAM_STORAGE_ENGINE用于指定MySQL支持MyISAM引擎。
7、DWITH_INNOBASE_STORAGE_ENGINE用于指定MySQL支持InnoDB引擎。
8、DWITH_MEMORY_STORAGE_ENGINE用于指定MySQL支持Memory引擎。
9、DWITH_READLINE用于指定MySQL支持ReadLine库。
10、DENABLED_LOCAL_INFILE用于指定MySQL允许倒入本地数据,启用本地加载数据。
11、DMYSQL_DATADIR用于指定MySQL数据库的安放路径。
12、DMYSQL-USER用于指定运行MySQL的用户。
MySQL的常见参数还有很多,如果想要了解更多参数的使用详情,可以参考以下网站:
https://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html
该网站如下:
在成功进行预编译后,还是执行命令:
make -j 4&& make install
1
以完成编译和安装操作。
(二)配置和初始化MySQL
在安装完毕MySQL后,我们还需要对MySQL进行配置。
首先,修改MySQL的配置文件属主和属组,执行命令:
chown -R mysql.mysql /usr/local/mysql
1
其次,修改MySQL主配置文件,打开/usr/local/mysql/support-files/my-default.cnf,找打其中的basedir和datadir选项,修改为我们的MySQL设置和安装路径,如下:
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
1
2
然后,复制MySQL的配置文件和启动脚本,执行命令:
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
1
2
最后,初始化MySQL数据库并进行安全设置,执行命令:
/usr/locl/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql
1
/usr/local/mysql/bin/mysql_secure_installation
1
这样,MySQL就安装完毕了。
四、PHP源码安装
(一)安装PHP
在完成上述操作后,我们就可以源码安装PHP了,进入到PHP的安装目录后,执行命令:
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql/ --with-apxs2=/usr/local/httpd/bin/apxs --with-config-file-path=/usr/local/php
1
即可进行PHP的源码安装预编译了。
在预编译命令中,–prefix参数用于指定PHP的安装目录,–with-mysql用于指定MySQL的安装目录,–with-apxs2用于指定Apache的apx模块,将PHP编译为Apache的一个模块,–with-config-file-path用于指定PHP的主配置文件php.ini的安装目录。
在成功进行预编译后,还是执行命令:
make -j 4&& make install
1
以完成编译和安装操作。
(二)配置Apache支持PHP
接下来,我们还需要配置Apache支持PHP文件的解析,打开Apache的主配置文件,/usr/local/httpd/conf/httpd.conf,找到AddType字段,大概在381行左右,如下所示:
在该字段下面添加如下内容:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
1
2
添加时,要注意点前面的空格。
添加完成后,配置文件如下所示:
这样,Apache就可以支持PHP模块了。
五、安装验证
最后,我们来验证一下刚才安装的结果,在我们刚刚配置的LAMP架构下,安装wordpress,并检验安装效果。worpress是一款免费的个人博客软件,可以直接在官网下载到,我采用的版本是4.8。下载该软件后,上传到设备中,并进行解压。
将解压后的内容复制到Apache的网站目录下,并访问该网站,结果如下所示:
点击Let’s go!配置MySQL数据的相关信息,如下所示:
此时,我们需要登录MySQL数据库,建立wordpress数据库,并按照我们的配置进行授权,命令如下:
create database wordpress;
grant all on wordpress.* to 'username'@'localhost' identified by 'password';
1
2
之后按照提示一直进行配置,配置wordpress的用户名、密码和标题信息,如下所示:
完成配置后,最终登录页面如下:
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200
文章知识点与官方知识档案匹配,可进一步学习相关知识
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_40228200/article/details/122502236