一、前言
最近学习了LAMP的相关知识,为了巩固知识以及方便回顾,特意编写此文记录LAMP搭建的步骤及相关要点。
此处搭建实验将把Lamp安装在同一个Centos7服务器上。其逻辑图类似如下:
二、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平台已经正常启动;如果在页面中能找到mysql、mysqli的信息内容,说明对php平台能正常访问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";
?>
然后访问相应的测试页面:
停用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的配置页面:
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的初始化操作。
用户也可以通过参考/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就安装完成了,我们就可按照自己的喜好编辑创建自己的博客,发表文章了。