首先先容一下LAMP和LNMP
LMAP即Linux+Apache+Mysql/MariaDB+Perl/PHP/Python的首字母缩写。这是一组常用来搭建动态网站或者做事器的开源软件。它们本身都是各自独立的程序,但是由于常被放在一起利用,拥有了越来越高的兼容度,共同组成了一个强大的Web运用程序平台。随着开源潮流的发达发展,开放源代码的LAMP已经与J2EE和.Net商业软件形成三足鼎立之势,并且该软件开拓的项目在软件方面的投资本钱较低,因此受到全体IT界的关注。从网站的流量上来说,70%以上的访问流量是LAMP来供应的,LAMP是最强大的网站办理方案。
Linux

Linux是一套免费利用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行紧张的UNIX工具软件、运用程序和网络协议。它支持32位和64位硬件。Linux继续了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
本次利用的CentOS为Linux的一个发行版。
Apache
Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页做事器,可以在大多数打算机操作系统中运行,由于其多平台和安全性被广泛利用,是最盛行的Web做事器端软件之一。它快速、可靠并且可通过大略的API扩展,将Perl/Python等阐明器编译到做事器中。
Apache的主程序名叫httpd,这也是我们实验的时候须要安装的程序之一。
MySQL
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开拓,目前属于 Oracle 旗下产品。MySQL 最盛行的关系型数据库管理系统,在 WEB 运用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 运用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速率并提高了灵巧性。MySQL所利用的 SQL 措辞是用于访问数据库的最常用标准化措辞。MySQL 软件采取了双授权政策,它分为社区版和商业版,由于其体积小、速率快、总体拥有本钱低,尤其是开放源码这一特点,一样平常中小型网站的开拓都选择 MySQL 作为网站数据库。由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开拓环境。
本次实验利用的数据库软件为MySQL的一个分支软件,叫做MariaDB。
php
PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本措辞。语法接管了C措辞、Java和Perl的特点,利于学习,利用广泛,紧张适用于Web开拓领域。PHP 独特的语法稠浊了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地实行动态网页。用PHP做出的动态页面与其他的编程措辞比较,PHP是将程序嵌入到HTML(标准通用标记措辞下的一个运用)文档中去实行,实行效率比完备天生HTML标记的CGI要高许多;PHP还可以实行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
WordPress
WordPress是一种利用PHP措辞开拓的博客平台,用户可以在支持PHP和MySQL数据库的做事器上架设属于自己的网站。也可以把 WordPress当作一个内容管理系统(CMS)来利用。WordPress是一款个人博客系统,并逐步蜕变成一款内容管理系统软件,它是利用PHP措辞和MySQL数据库开拓的。用户可以在支持 PHP 和 MySQL数据库的做事器上利用自己的博客。WordPress有许多第三方开拓的免费模板,安装办法大略易用。不过要做一个自己的模板,则须要你有一定的专业知识。比如你至少要懂的标准通用标记措辞下的一个运用HTML代码、CSS、PHP等干系知识。WordPress官方支持中文版,同时有爱好者开拓的第三方中文措辞包,如wopus中文措辞包。WordPress拥有成千上万个各式插件和不计其数的主题模板样式。
LNMP和LAMP的差异
LNMP和LAMP的差异就在于利用Nginx而不是Apache。
Nginx是一款轻量级的Web 做事器/反向代理做事器及电子邮件(IMAP/POP3)代理做事器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开拓,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)利用。其特点是霸占内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页做事器中表现较好。
Nginx和Apache的优缺陷比拟
nginx 相对 apache 的优点:
轻量级,同样起web 做事,比apache 占用更少的内存及资源。
抗并发,nginx 处理要求是异步非壅塞的,而apache 则是壅塞型的,在高并发下nginx 能保持低资源低花费高性能。
高度模块化的设计,编写模块相对大略。
社区生动,各种高性能模块出品迅速啊。
apache 相对nginx 的优点:
rewrite ,比nginx 的rewrite 强大。
模块超多,基本想到的都可以找到。
少bug ,nginx 的bug 相对较多。
超稳定。
动手实操
假设你已经安装好了centos 了(如果不会,可以直接在阿里云购买)
先看下系统版本号,我当前装的是CentOs 7.4虚拟机
1
2
3
[itarea@centos-7~]$cat/etc/centos-release
CentOS Linux release7.4.1708(Core)
[itarea@centos-7~]$
Apache安装
1
2
3
[itarea@centos-7~]$yum install httpd-y
Loaded plugins:fastestmirror,langpacks
You need tobe root toperform thiscommand
报错提示没有权限,办理办法,改为root权限,然后输入密码回车
1
2
[itarea@centos-7~]$su root
Password:
可以看到,用户切换成了root,再实行一遍安装
1
[root@centos-7itarea]# yum install httpd -y
接下来,我们启动httpd做事:
1
[root@centos-7itarea]# systemctl start httpd
1
2
3
4
5
6
7
8
9
10
11
12
[root@centos-7itarea]# ss -tnl
State Recv-QSend-QLocal Address:Port Peer Address:Port
LISTEN0128:111:
LISTEN05192.168.122.1:53:
LISTEN0128:22:
LISTEN0128127.0.0.1:631:
LISTEN0100127.0.0.1:25:
LISTEN0128:::111:::
LISTEN0128:::80:::
LISTEN0128:::22:::
LISTEN0128::1:631:::
LISTEN0100::1:25:::
可以看到http做事的80端口是处于监听状态的。
MySQL安装
1
[root@centos-7itarea]# yum install mysql mariadb-server -y
安装完之后开启MySQL做事:
1
[root@centos-7itarea]# systemctl start mariadb
1
2
3
4
5
6
7
8
9
10
11
12
13
[root@centos-7itarea]# ss -tnl
State Recv-QSend-QLocal Address:Port Peer Address:Port
LISTEN0128:111:
LISTEN05192.168.122.1:53:
LISTEN0128:22:
LISTEN0128127.0.0.1:631:
LISTEN0100127.0.0.1:25:
LISTEN050:3306:
LISTEN0128:::111:::
LISTEN0128:::80:::
LISTEN0128:::22:::
LISTEN0128::1:631:::
LISTEN0100::1:25:::
可以看到mysql做事的3306端口是处于监听状态的。
进入Mysql,mysql第一次安装默认是没有密码的,输入后直接回车就行
1
2
3
4
5
6
7
8
9
10
11
[root@centos-7itarea]# mysql -u root -p
Enter password:
Welcome tothe MariaDB monitor.Commands endwith;or\g.
Your MariaDB connection idis3
Server version:5.5.56-MariaDB MariaDB Server
Copyright(c)2000,2017,Oracle,MariaDB Corporation Ab andothers.
Type'help;'or'\h'forhelp.Type'\c'toclearthe current input statement.
MariaDB[(none)]>
创建一个名为wordpress的数据库
1
2
3
4
5
6
7
8
9
10
Welcome tothe MariaDB monitor.Commands endwith;or\g.
Your MariaDB connection idis2
Server version:5.5.56-MariaDB MariaDB Server
Copyright(c)2000,2017,Oracle,MariaDB Corporation Ab andothers.
Type'help;'or'\h'forhelp.Type'\c'toclearthe current input statement.
MariaDB[(none)]>create database wordpress;
Query OK,1row affected(0.00sec)
查看数据库,并切换到mysql数据库
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
MariaDB[(none)]>show databases;
+--------------------+
|Database|
+--------------------+
|information_schema|
|mysql|
|performance_schema|
|test|
|wordpress|
+--------------------+
5rows inset(0.00sec)
MariaDB[(none)]>usemysql
Reading table information forcompletion of table andcolumn names
You can turn off thisfeature togetaquicker startup with-A
Database changed
MariaDB[mysql]>
变动数据库用户名为root密码
1
MariaDB[mysql]>update user set password=password('新密码')where user='root';
刷新用户权限列表,并退出重新登录
1
2
3
4
MariaDB[mysql]>flush privileges;
Query OK,0rows affected(0.00sec)
MariaDB[mysql]>exit
php安装
1
[root@centos-7itarea]# yum install php php-mysql php-gd php-xml -y
进入httpd主理事目录
1
[root@centos-7itarea]# cd /var/www/html
编辑phpinfo.php文件
1
[root@centos-7itarea]# vim phpinfo.php
点击I切换到Insert模式,输入以下内容,按ecs键,输入:wq 并回车
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
echophpinfo();
?>
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
:wq
然后,打开浏览器,输入主机http://ip/phpinfo.php就可以看到PHP的信息:
WordPress安装
安装WordPress并解压,WordPress最新版下载地址:https://cn.wordpress.org/txt-download/
1
2
[root@centos-7html]# wget https://cn.wordpress.org/wordpress-4.9.4-zh_CN.zip
[root@centos-7html]# unzip wordpress-4.9.4-zh_CN.zip
把稳:如果下载的地址不在/var/www/html目录下,你须要将文件移动到该目录下
1
[root@centos-7html]# cp -r wordpress/ /var/www/html
进入/var/www/html目录,复制wp-config-sample.php文件并将其命名为wp-config.php并编辑wp-config.php
1
2
[root@centos-7html]# sudo cp wp-config-sample.php wp-config.php
[root@centos-7html]# vim wp-config.php
然后找到下面这些内容,修正database_name_here为刚刚新建的数据库(本位为wordpress),username_here为root,密码为修正后的密码,然后按ecs输入:wq 退出保存
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//MySQL设置-详细信息来自您正在利用的主机//
/WordPress数据库的名称/
define('DB_NAME','database_name_here');
/MySQL数据库用户名/
define('DB_USER','username_here');
/MySQL数据库密码/
define('DB_PASSWORD','password_here');
/MySQL主机/
define('DB_HOST','localhost');
/创建数据表时默认的笔墨编码/
define('DB_CHARSET','utf8');
/数据库整理类型。如不愿定请勿变动/
define('DB_COLLATE','');
安装wordpress,在浏览器地址栏输入http://ip地址/wp-admin/setup-config.php,博主是本地测试的,以是ip地址为localhost(127.0.0.1)
点击现在就开始,如果刚刚已经配置了wp-config.php就会涌现左图,如果没有配置就会涌现右图
点击提交
点击安装wordpress,点击登录
输入用户名和密码,登录