在centos7上搭建Lamp环境并部署wordpress

一、前言

最近学习了LAMP的相关知识,为了巩固知识以及方便回顾,特意编写此文记录LAMP搭建的步骤及相关要点。
此处搭建实验将把Lamp安装在同一个Centos7服务器上。其逻辑图类似如下:


Lamp环境逻辑图

二、LAMP的搭建

1、安装httpd服务

[root@localhost ~]# yum install -y httpd

2、安装mysql服务:

[root@localhost ~]# yum install -y mariadb-server

3、安装php服务

[root@localhost ~]# yum install -y php php-mysql

其中php-mysql用于让php连接mysql数据库。

安装完成后,在/etc/httpd/conf.d/目录下会生成一个php.conf文件,此文件为httpd服务的php模块的配置文件

[root@localhost ~]# vim /etc/httpd/conf.d/php.conf
#
# Cause the PHP interpreter to handle files with a .php extension.
#
<FilesMatch \.php$>  #匹配以.php结尾的文件
    SetHandler application/x-httpd-php  #调用php模块
</FilesMatch>

#
# Allow php to handle Multiviews
#
#添加支持的文件类型
AddType text/html .php

#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php  #设置默认首页为index.php
#建议注释掉/etc/httpd/conf/httpd.conf文件中DirectoryIndex index.html ,以免对显示产生影响;

#
# Uncomment the following lines to allow PHP to pretty-print .phps
# files as PHP source code:
#
#匹配以.phps结尾的文件
#<FilesMatch \.phps$> 
#    SetHandler application/x-httpd-php-source  #调用php的源代码模块
#</FilesMatch>

#
# Apache specific PHP configuration options
# those can be override in each configured vhost
#
php_value session.save_handler "files"
php_value session.save_path    "/var/lib/php/session"

4、在/var/www/html 目录下编辑生成index.php文件

[root@localhost ~]# vim /var/www/html/index.php
<html>
        <title>This is a PHP page.</title>
        <body>
                <h1>PHP Info Page</h1>
                <?php
                        phpinfo();
                ?>
        </body>
</html

5、启动httpd服务并访问相应的页面

[root@localhost ~]# systemctl start httpd  
[root@localhost ~]# systemctl stop firewalld  #停止firewalld
[root@localhost ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.  
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@localhost ~]# setenforce 0  #设置selinux为permissive
能正常访问打开php信息页面

如上图所示能正常打开相应的php信息页面,说明php平台已经正常启动;如果在页面中能找到mysql、mysqli的信息内容,说明对php平台能正常访问mysql和mysqli接口,如下图:


mysql和mysqli信息

6、启动mysql服务

[root@localhost ~]# systemctl start mariadb

7、测试php与mysql的连接性
在/var/www/html目录下编辑创建mysql.php文件:

<?php
        $conn = mysql_connect('127.0.0.1','root','');
        if ($conn)
                echo "Connected to mysql.";
        else
                echo "Fail";
?>

然后访问相应的测试页面:


访问说明php能正常连接到mysql

停用mysql后,在访问相应的页面:


显示正确

三、搭建wordpress

1、在链接:https://cn.wordpress.org/ 找到相应的wordpress下载链接,并通过wget命令下载到本地服务器主机并解压缩

[root@localhost ~]# wget https://cn.wordpress.org/wordpress-4.9.4-zh_CN.tar.gz
[root@localhost ~]# tar xf wordpress-4.9.4-zh_CN.tar.gz
[root@localhost ~]# ll -d wordpress*
drwxr-xr-x. 5 nobody 65534    4096 Feb  7 23:53 wordpress

2、随后复制解压缩的wordpress目录到/var/www/html目录下:

[root@localhost ~]# cp wordpress /var/www/html/

3、此时通过访问URL:http://IP-ADDRESS/wordpress 即可进行到wordpress的配置页面:

初始访问需要对wordpress进行初始化配置

4、为了能让wordpress正常运行,在数据库中创建wordpress数据库以及创建相应的账号。

[root@localhost ~]# mysql -uroot
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 5.5.56-MariaDB MariaDB Server

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> create database wordpress;  #创建wordpress数据库
Query OK, 1 row affected (0.01 sec)
#创建wordpressuser作为wordpress访问数据库的账号
MariaDB [(none)]> GRANT ALL ON wordpress.* TO 'wordpressuser'@'192.168.%.%' IDENTIFIED BY "magedu"; 
Query OK, 0 rows affected (0.00 sec)

为了保证能正常登陆,建议修改/etc/my.conf文件添加下面语句并重启mariadb服务:

[root@localhost ~]# vim /etc/my.cnf
skip-name-resolve=ON  #跳过域名解析,此方法仅适用于centos7;
[root@localhost ~]# systemctl restart mariadb

5、返回页面,继续完成wordpress的初始化操作。


填写相应的信息

页面提示需手动创建wp-config.php文件

用户也可以通过参考/var/www/html/wordpress/wp-config-sample.php文件来在命令行创建对应的wp-config.php文件。

6、手动创建wp-config.php文件

[root@localhost ~]# vim /var/www/html/wordpress/wp-config.php
<?php
/**
 * WordPress基础配置文件。
 *
 * 这个文件被安装程序用于自动生成wp-config.php配置文件,
 * 您可以不使用网站,您需要手动复制这个文件,
 * 并重命名为“wp-config.php”,然后填入相关信息。
 *
 * 本文件包含以下配置选项:
 *
 * * MySQL设置
 * * 密钥
 * * 数据库表名前缀
 * * ABSPATH
 *
 * @link https://codex.wordpress.org/zh-cn:%E7%BC%96%E8%BE%91_wp-config.php
 *
 * @package WordPress
 */

// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 */
define('DB_NAME', 'wordpress');

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

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

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

/** 创建数据表时默认的文字编码 */
define('DB_CHARSET', 'utf8mb4');

/** 数据库整理类型。如不确定请勿更改 */
define('DB_COLLATE', '');

/**#@+
 * 身份认证密钥与盐。
 *
 * 修改为任意独一无二的字串!
 * 或者直接访问{@link https://api.wordpress.org/secret-key/1.1/salt/
 * WordPress.org密钥生成服务}
 * 任何修改都会导致所有cookies失效,所有用户将必须重新登录。
 *
 * @since 2.6.0
 */
define('AUTH_KEY',         '!;#@OR03j87T7qH/WrceNVH%B~>MR/y><8CbXsVG#@GG:l|<0BYx%VD8.+0*m1BA');
define('SECURE_AUTH_KEY',  'BSrmHuvZOZ}Dce&Kb6PzfLVbbs$sU,SG&4/=L}A#|Kv&{k|c@S8]_5p EUoPG%dn');
define('LOGGED_IN_KEY',    'UUVB~DZseI@mF,wJ~Y(vI^m pa-iz)M+I+CKqZzZ((5Q<_/18tz=teL3*5SNGc=*');
define('NONCE_KEY',        's-|wCdb-lE)hW2B~^<S8cczFb{A-5?Vaxwvz$kzt!KqweJ-dDcbAf:r%|}mZM{<]');
define('AUTH_SALT',        '| NrJ[5KSpfn|)x@XG^.@Nj6r9Rcj*#GadpN~o_E1^4<]>Nhh[|cZSM8ddlBMSTd');
define('SECURE_AUTH_SALT', 'y;n.E#%[7$!qX1;]Q;u@H_s=A+XpJ[i>u*XLT1!b6)b?spS!finRl@#DRZ<XWYV=');
define('LOGGED_IN_SALT',   '%x)I>ZQf)Dwp-!ZeW=}b69f^JLheG;5JGhJNS)t#2YgHf#HX,K:2[D~e3uh,g_(@');
define('NONCE_SALT',       'ZYs]r20xvwor2|3:jgZ@95ZF%eC3P49.V)7{21h9Z?{$eFWFtbN#-(I!y%/*$;%e');

/**#@-*/

/**
 * WordPress数据表前缀。
 *
 * 如果您有在同一数据库内安装多个WordPress的需求,请为每个WordPress设置
 * 不同的数据表前缀。前缀名只能为数字、字母加下划线。
 */
$table_prefix  = 'wp_';

/**
 * 开发者专用:WordPress调试模式。
 *
 * 将这个值改为true,WordPress将显示所有用于开发的提示。
 * 强烈建议插件开发者在开发环境中启用WP_DEBUG。
 *
 * 要获取其他能用于调试的信息,请访问Codex。
 *
 * @link https://codex.wordpress.org/Debugging_in_WordPress
 */
define('WP_DEBUG', false);

/**
 * zh_CN本地化设置:启用ICP备案号显示
 *
 * 可在设置→常规中修改。
 * 如需禁用,请移除或注释掉本行。
 */
define('WP_ZH_CN_ICP_NUM', true);

/* 好了!请不要再继续编辑。请保存本文件。使用愉快! */

/** WordPress目录的绝对路径。 */
if ( !defined('ABSPATH') )
    define('ABSPATH', dirname(__FILE__) . '/');

/** 设置WordPress变量和包含文件。 */
require_once(ABSPATH . 'wp-settings.php');

创建完成后返回页面点击现在安装。

7、随后会弹出下列界面,按照图片信息填写完成后,点击安装wordpress。


设置信息

安装完成后的页面

8、安装完成后,用户可通过访问地址http://IPaddress/wordpress来访问博客网站或者访问http://IPaddress/wordpress/wp-login.php来登录网站后台。

访问博客

访问博客后台

博客后台展示

至此,wordpress就安装完成了,我们就可按照自己的喜好编辑创建自己的博客,发表文章了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,098评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,213评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,960评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,519评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,512评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,533评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,914评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,804评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,563评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,644评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,350评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,933评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,908评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,146评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,847评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,361评论 2 342