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

2018-05-05  本文已影响0人  小尛酒窝

一、前言

最近学习了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就安装完成了,我们就可按照自己的喜好编辑创建自己的博客,发表文章了。

上一篇下一篇

猜你喜欢

热点阅读