CentOS 7下部署LAMP教程及实现WordPress

原理

  http使用方法一编译安装,php独立服务fpm实现。

 

软件版本

  在本次实验中,我们需要用到的软件版本如下:
  apr-1.6.2
  apr-util-1.6.0
  httpd-2.4.28
  mariadb-10.2.8
  php-7.1.10
  phpMyAdmin-4.0.10.20-all-languages  —-一个方便配置数据库的图形化页面
  wordpress-4.8.1  —-博客搭建软件
  我们先用rz命令把所有的安装包上传至/root/src目录下,以方便我们的实验。
  所有的安装包全部在官网下载,下面附上网址:
  httpd官网:http://httpd.apache.org/
  apr官网:http://apr.apache.org/
  mariadb官网:http://mariadb.org/
  php官网:http://php.net/
  phpMyAdmin官网:https://www.phpmyadmin.net/
  wordpress官网:https://cn.wordpress.org/

 

实验前准备

  提前安装好软件包组及其相关的包:

yum groupinstall "development tools" -y
yum install pcre-devel openssl-devel expat-devel -y 
yum install bzip2-devel libxml2-devel libmcrypt-devel -y

  其中:
  openssl-develexpat-develpcre-devel http所依赖的包
  bzip2-devellibxml2-devellibmcrypt-devel php所依赖的包
  注意:需epel扩展源

 

一、编译安装http2.4

 

1、编译安装apr-1.6.2

1)解压缩

tarxvfapr-1.6.2.tar.gz

2)进入该目录并编译安装

[root@localhost src]# cd apr-1.6.2/
[root@localhost apr-1.6.2]# ./configure --prefix=/app/apr
[root@localhost apr-1.6.2]# make && make install

3)编译安装完成之后查看/app下是否生成了新的目录:

[root@localhost apr-1.6.2]# ls /app/
apr

  可以看出已经生成了apr/目录,该步骤完成。

 

2、编译安装apr-util-1.6.0

1)解压缩

tarxvfapr-util-1.6.0.tar.gz

2)进入该目录并编译安装

[root@localhost apr-1.6.2]# cd ../apr-util-1.6.0/
[root@localhost apr-util-1.6.0]# ./configure --prefix=/app/apr-util --with-apr=/app/apr/
[root@localhost apr-util-1.6.0]# make && make install

3)编译安装完成之后查看/app下是否生成了新的目录:

[root@localhost apr-util-1.6.0]# ls /app/
apr  apr-util

  可以看出已经生成了apr-util/目录,该步骤完成。

 

3、编译安装http-2.4.28

1)解压缩

tarxvfhttpd-2.4.28.tar.bz2

2)进入该目录并编译安装

[root@localhost apr-util-1.6.0]# cd ../httpd-2.4.28/
[root@localhost httpd-2.4.28]#./configure --prefix=/app/httpd24 \--enable-so \--enable-ssl \--enable-cgi \--enable-rewrite \--with-zlib \--with-pcre \--with-apr=/app/apr/ \--with-apr-util=/app/apr-util/ \--enable-modules=most \--enable-mpms-shared=all \--with-mpm=prefork
[root@localhost httpd-2.4.28]# make && make install

3)编译安装后的配置

  我们先来修改一下我们的环境变量,以方便我们后面的服务开启:

[root@CentOS7 httpd-2.4.28]# vim /etc/profile.d/lamp.sh
PATH=/app/httpd24/bin:/usr/local/MySQL/bin/:/app/php/bin/:$PATH
[root@centos7 httpd-2.4.28]# . /etc/profile.d/lamp.sh
[root@centos7 httpd-2.4.28]# apachectl 
[root@centos7 httpd-2.4.28]# ss -ntl
State       Recv-Q Send-Q                     Local Address:Port                                    Peer Address:Port              
LISTEN      0128                                    *:111                                                *:*                  
LISTEN      0128                                    *:22                                                 *:*                  
LISTEN      0100127.0.0.1:25                                                 *:*                  
LISTEN      0128:::111:::*                  
LISTEN      0128:::80:::*                  
LISTEN      0128:::22:::*                  
LISTEN      0100::1:25:::*

 

二、安装mariadb

 

1、解包解压缩

tar xvfmariadb-10.2.9-linux-x86_64.tar.gz -C /usr/local/

  因为我们是二进制安装,所以必须要指定解压缩的目录为/usr/local/

 

2、创建mysql用户

  因为mysql用户是系统用户,所以我们创建的时候要加上-r

[root@centos7 src]# useradd -d /app/mysqldb -r -m -s /sbin/nologin mysql

  创建用户以后,我们把/app/mysqldb/的所属人换成mysql

[root@centos7 src]# chown mysql /app/mysqldb/

 

3、查看文件

  我们使用cd /usr/local/进入解开压缩包的目录,发现mariadb的目录名字不符合要求,所以我们可以直接修改名字,也可以创建一个软连接,创建软连接命令如下:

[root@centos7 mysql]# ln -s mariadb-10.2.8-linux-x86_64/ mysql 

 

4、创建修改配置文件

  进入mysql文件夹,查看support-files文件夹中的内容,发现里面有我们的配置文件,但是配置文件不应该在这个目录下,应该放在/etc/mysql/下,所以,我们要创建这个目录,并把配置文件复制进去,具体的操作如下:

[root@centos7 src]# cd /usr/local/mysql/
[root@centos7 mysql]# ls
bin                 include         README-wsrep
COPYING             INSTALL-BINARY  scripts
COPYING.thirdparty  lib             share
CREDITS             man             sql-bench
data                mysql-test      support-files
EXCEPTIONS-CLIENT   README.md
[root@centos7 mysql]# ls support-files/
binary-configure        my-medium.cnf        policy
magic                   my-small.cnf         wsrep.cnf
my-huge.cnf             mysqld_multi.server  wsrep_notify
my-innodb-heavy-4G.cnf  mysql-log-rotate
my-large.cnf            mysql.server
[root@centos7 mysql]# mkdir /etc/mysql
[root@centos7 mysql]# cp support-files/my-huge.cnf /etc/mysql/my.cnf

  接下来,我们来修改配置文件:

[root@centos7 mysql]# vim /etc/mysql/my.cnf[mysqld]datadir = /app/mysqldb      //指定总目录,必须的
innodb_file_per_table = on  //让每一个表数据库都是一个文件,方便管理
skip_name_resolve = on      //忽略名字的反向解析,加快速度 

 

5、执行脚本,创建系统数据库

  首先,我们要确保我们在/usr/local/mysql这个目录下,只能在这个目录下执行脚本:

[root@centos7 mysql]# cd /usr/local/mysql
[root@centos7 mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/app/mysqldb

  执行脚本完成后就会在/app/mysqldb/ 生成mysql系统数据库

 

6、创建日志文件

[root@centos7 mysql]# touch /var/log/mariadb.log
[root@centos7 mysql]# chown mysql /var/log/mariadb.log

 

7、把服务脚本复制过去

[root@centos7 mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@centos7 mysql]# chkconfig --add mysqld //设置服务在哪个运行级别,在哪个运行级别开启服务
[root@centos7 mysql]# chkconfig --list mysqld

  复制完了以后,我们就可以开启服务了:

[root@centos7 mysql]# service mysqld start

  因为我们提前创建了日志文件,所以我们的服务可以正常开启。

 

8、运行安全初始化脚本

  我们在上个大步骤中,已经把所有的PATH变量都设置好了,所以现在我们可以直接运行我们的安全初始化脚本:

[root@centos7 mysql]# mysql_secure_installation

 

三、安装php

 

1、解压缩

tarxvfphp-7.1.10.tar.xz

 

2、进入目录进行编译安装

  我们使用cd命令进入该目录,然后对php进行编译安装:

[root@centos7 src]# cd php-7.1.10/
[root@centos7 php-7.1.10]# ./configure \
--prefix=/app/php \--enable-mysqlnd \--with-mysqli=mysqlnd \--with-openssl \--with-pdo-mysql=mysqlnd \--enable-mbstring \--with-freetype-dir \--with-jpeg-dir \--with-png-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 \--enable-maintainer-zts \--disable-fileinfo
[root@centos7 php-7.1.10]# make -j 4 && make install

 

3、复制并编辑配置文件

  首先,我们要复制配置文件到/etc目录下:

[root@centos7 php-7.1.10]# cp php.ini-production /etc/php.ini
[root@centos7 php-7.1.10]# vim /app/httpd24/http.conf

  我们要在文件的尾部加上两行:

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

  同时,在这个文件里还要修改一行内容:

<IfModule dir_module>
    DirectoryIndex index.php index.html
</IfModule>

  全部改好了以后,我们就可以停止服务,并进行重启:

[root@centos7 php-7.1.10]# apachectl stop
[root@centos7 php-7.1.10]# apachectl 

 

4、测试

  我们编辑一个测试文件

[root@centos7 php-7.1.10]# vim /app/httpd24/htdocs/a.php<?php
$mysqli=new mysqli("localhost","root","centos");
if(mysqli_connect_errno()){
echo"连接数据库失败!";
$mysqli=null;
exit;
}
echo"连接数据库成功!";
$mysqli->close();
phpinfo();
?>

 

四、部署phpmyadmin

  phpmyadmin就是一个可以图形化配置数据库与php连接的软件,但是这个软件,只有在数据库和php在同一台主机的时候才可以生效。我们现在开始配置安装这个软件。

 

1、解压缩并更改目录位置

  首先,我们对这个文件进行解压缩:

unzipphpMyAdmin-4.0.10.20-all-languages.zip

  然后,我们把文件夹中的所有文件都移动到/app/httpd24/htdocs/下,并改名为pma/

[root@centos7 src]# cp -r phpMyAdmin-4.0.10.20-all-languages/ /app/httpd24/htdocs/pma/

  现在,我们来查看一下这个文件:

[root@centos7 src]# ls /app/httpd24/htdocs/pma/
browse_foreigners.php   server_binlog.php
ChangeLog               server_collations.php
changelog.php           server_databases.php
chk_rel.php             server_engines.php
composer.json           server_export.php
config.sample.inc.php   server_import.php
db_create.php           server_plugins.php
db_datadict.php         server_privileges.php
db_events.php           server_replication.php
db_export.php           server_sql.php
db_import.php           server_status_advisor.php
db_operations.php       server_status_monitor.php
db_printview.php        server_status.php
db_qbe.php              server_status_queries.php
db_routines.php         server_status_variables.php
db_search.php           server_variables.php
db_sql.php              setup
db_structure.php        show_config_errors.php
db_tracking.php         sql.php
db_triggers.php         tbl_addfield.php
doc                     tbl_change.php
examples                tbl_chart.php
export.php              tbl_create.php
favicon.ico             tbl_export.php
file_echo.php           tbl_get_field.php
gis_data_editor.php     tbl_gis_visualization.php
import.php              tbl_import.php
import_status.php       tbl_indexes.php
index.php               tbl_move_copy.php
js                      tbl_operations.php
libraries               tbl_printview.php
LICENSE                 tbl_relation.php
license.php             tbl_replace.php
locale                  tbl_row_action.php
navigation.php          tbl_select.php
phpmyadmin.css.php      tbl_sql.php
pmd_display_field.php   tbl_structure.php
pmd_general.php         tbl_tracking.php
pmd_pdf.php             tbl_triggers.php
pmd_relation_new.php    tbl_zoom_select.php
pmd_relation_upd.php    themes
pmd_save_pos.php        themes.php
prefs_forms.php         transformation_overview.php
prefs_manage.php        transformation_wrapper.php
print.css               url.php
querywindow.php         user_password.php
README                  version_check.php
RELEASE-DATE-4.0.10.20  view_create.php
robots.txt              view_operations.php
schema_edit.php         webapp.php
schema_export.php

 

2、通过图形化部署

 

五、部署wordpress

 

1、解压缩并移动文件

  首先,我们进行解压缩:

tarxvfwordpress-4.8.1-zh_CN.tar.gz

  然后,把该文件夹中的文件全部移动到/app/httpd24/htdocs/这个目录下:

[root@centos7 src]# cd wordpress/
[root@centos7 wordpress]# ls
[root@centos7 wordpress]# mv * /app/httpd24/htdocs/

  接着,我们进入/app/httpd24/htdocs/这个文件夹,查看文件:

[root@centos7 wordpress]# cd /app/httpd24/htdocs/
[root@centos7 htdocs]# ls
a.php            wp-blog-header.php    wp-load.php
index.html       wp-comments-post.php  wp-login.php
index.php        wp-mail.php           license.txt      
wp-config-sample.php  wp-settings.php  pma              
wp-content       wp-signup.php         readme.html      
wp-cron.php      wp-trackback.php      wp-activate.php  
wp-includes      xmlrpc.php            wp-admin         
wp-links-opml.php

  我们可以看到这里面有一个wp-config-sample.php文件,我们复制一份并改名,接着编辑:

[root@centos7 htdocs]# cpwp-config-sample.phpwp-config.php[root@centos7 htdocs]# vimwp-config.php

  我们只需要修改四行的内容,也就是我们上一步中设置的数据库账号的相关内容:

/** WordPress数据库的名称 */
define('DB_NAME', 'wpdb');

/** MySQL数据库用户名 */
define('DB_USER', 'wpuser');

/** MySQL数据库密码 */
define('DB_PASSWORD', 'centos');

/** MySQL主机 */
define('DB_HOST', '172.17.251.77');

 

2、测试登录

下面关于LAMP相关的内容你可能也喜欢

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/222647.html<

(0)
管理的头像管理
上一篇2025-04-15 14:31
下一篇 2025-04-15 14:32

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注