Web服务基础五之yum安装配置LAMP环境+博客系统WordPress

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

Apache本身只支持静态网页,但目前的绝大多数网站都是动态Web站点,所以在实际应用中,Apache还必须得跟其它一些应用软件配合使用,只有这样才能构建一个高效可用的Web平台,目前使用较多的是LAMP平台(LAMP:Linux+Apace+MySQL+PHP)。在部署LAMP时,安装的一般顺序是Linux、Apache、MySQL、PHP,实际应用中,这些软件也大都是采用源码编译的方式来安装。

以下演示一个基本的LAMP环境搭建过程:

一、安装软件

1、RHEL6.3安装、配置:

  • 安装见之前的文章:RHEL6基础之四RHEL系统安装

  • 设置防火墙,开启mysql port:3306 apache port:80

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    [root@justin ~] # vim /etc/sysconfig/iptables
    # Firewall configuration written by system-config-firewall
    # Manual customization of this file is not recommended.
    *filter
    :INPUT ACCEPT [0:0]
    :FORWARD ACCEPT [0:0]
    :OUTPUT ACCEPT [0:0]
    -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    -A INPUT -p icmp -j ACCEPT
    -A INPUT -i lo -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
    -A INPUT -j REJECT --reject-with icmp-host-prohibited
    -A FORWARD -j REJECT --reject-with icmp-host-prohibited
    COMMITTips
  • 设置SELinux:这里关闭SELinux,线上环境根据具体情况设定

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    [root@justin ~] # vim /etc/selinux/config
    # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    #     enforcing - SELinux security policy is enforced.
    #     permissive - SELinux prints warnings instead of enforcing.
    #     disabled - No SELinux policy is loaded.
    #SELINUX=enforcing
    SELINUX=disabled
    # SELINUXTYPE= can take one of these two values:
    #     targeted - Targeted processes are protected,
    #     mls - Multi Level Security protection.
    #SELINUXTYPE=targeted
    [root@justin ~] # reboot

    Tips:SELinux设置为disabled需要重启机器才能生效,设置为enforcing和permissive只需要重启服务即可。

2、安装Apache服务

1
2
[root@justin ~] # rpm -qa|grep httpd
[root@justin ~] # yum install httpd -y

   Tips:RHEL未注册是无法通过yum来安装,这里使用CentOS的yum,配置见之前的文章:RHEL6基础二十三之RHEL使用centos的Yum源

1
2
3
4
5
6
7
8
9
10
11
[root@justin ~] # /etc/init.d/httpd start
Starting httpd: httpd: apr_sockaddr_info_get() failed  for  justin
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1  for  ServerName
                                                            [  OK  ]
[root@justin ~] # vim /etc/httpd/conf/httpd.conf
  276 ServerName localhost
[root@justin ~] # chkconfig --level 35 httpd on
[root@justin ~] # /etc/init.d/httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]
[root@justin ~] #

   Tips:Apache启动之后会提示错误:正在启动 httpd:httpd: Could not reliably determine the server's fully qualif domain name, using ::1 for ServerName ,修改配置文件276行为自己域名或者修改为localhost。

3、安装MySQL服务

  • 安装、启动

    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
    [root@justin ~] # yum install mysql mysql-server -y
    [root@justin ~] # /etc/init.d/mysqld start
    Initializing MySQL database:  Installing MySQL system tables...
    OK
    Filling help tables...
    OK
    To start mysqld at boot  time  you have to copy
    support-files /mysql .server to the right place  for  your system
    PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
    To  do  so, start the server,  then  issue the following commands:
    /usr/bin/mysqladmin  -u root password  'new-password'
    /usr/bin/mysqladmin  -u root -h justin password  'new-password'
    Alternatively you can run:
    /usr/bin/mysql_secure_installation
    which  will also give you the option of removing the  test
    databases and anonymous user created by default.  This is
    strongly recommended  for  production servers.
    See the manual  for  more  instructions.
    You can start the MySQL daemon with:
    cd  /usr  /usr/bin/mysqld_safe  &
    You can  test  the MySQL daemon with mysql- test -run.pl
    cd  /usr/mysql-test  ; perl mysql- test -run.pl
    Please report any problems with the  /usr/bin/mysqlbug  script!
                                                                [  OK  ]
    Starting mysqld:                                           [  OK  ]
    [root@justin ~] # chkconfig --level 35 mysqld on
    [root@justin ~] #
  • 拷贝配置文件、设置root账户密码(该root非系统账户root)

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
[root@justin ~] # cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
cp : overwrite ` /etc/my .cnf'? y
[root@justin ~] # mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
       SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!
In order to log into MySQL to secure it, we'll need the current
password  for  the root user.  If you've just installed MySQL, and
you haven't  set  the root password yet, the password will be blank,
so you should just press enter here.
Enter current password  for  root (enter  for  none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.
Set root password? [Y /n ] y    --设置root密码
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
  ... Success!
By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created  for
them.  This is intended only  for  testing, and to  make  the installation
go a bit smoother.  You should remove them before moving into a
production environment.
Remove anonymous  users ? [Y /n ] y    --移除匿名用户
  ... Success!
Normally, root should only be allowed to connect from  'localhost' .  This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y /n ] y  --不允许远程通过root登陆
  ... Success!
By default, MySQL comes with a database named  'test'  that anyone can
access.  This is also intended only  for  testing, and should be removed
before moving into a production environment.
Remove  test  database and access to it? [Y /n ] y  --移除测试数据库
  - Dropping  test  database...
  ... Success!
  - Removing privileges on  test  database...
  ... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y /n ] y    --重新加载特权表
  ... Success!
Cleaning up...
All  done !  If you've completed all of the above steps, your MySQL
installation should now be secure.
Thanks  for  using MySQL!
[root@justin ~] #

Tips:怎么修改数据库密码?遗忘数据库密码? 这里先不给出答案,先想下,稍后会通过微信平台给出,或者微信平台回复“mysql root密码”获取答案,如果无法获取回复可以通过回复“关键词”来获取相关问题关键词,然后再回复该关键词即可。

4、安装PHP

1
2
3
4
5
6
7
8
9
10
11
12
[root@justin ~] # yum install php php-mysql -y
Dependency Installed:
   php-cli.i686 0:5.3.3-27.el6_5      php-common.i686 0:5.3.3-27.el6_5      php-pdo.i686 0:5.3.3-27.el6_5 
Complete!
[root@justin ~] # vim /var/www/html/index.php
<?php
phpinfo();
?>
[root@justin ~] # /etc/init.d/httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]
[root@justin ~] #

浏览器里输入服务器IP地址就可以查看到php的信息

wKiom1Lfgyzy-bcgAARhnUc09GU028.jpg

Tips:apache默认的程序目录是/var/www/html 权限设置:chown apache.apache -R /var/www/html ;chmod 700 -R /var/www/html/ 至此,RHEL6.3安装配置LAMP服务器(Apache+PHP5+MySQL)完成,下面搭建博客系统wordpress


二、搭建Wordpress博客系统

一、下载上传软件包

先在下载Wordpress软件包解压wordpress包后使用WinSCP工具把wordpress-x.x.x-zh_CN\wordpress文件夹里面的所有文件以二进制方式上到/var/www/html/目录(上传前删除/var/www/html/下所有文件)wKioL1LfiRmT8thtAAPT2UfIj_Q233.jpg二、创建wordpress数据库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root@justin ~] # mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection  id  is 5
Server version: 5.1.71-log Source distribution
Copyright (c) 2000, 2013, Oracle and /or  its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and /or  its
affiliates. Other names may be trademarks of their respective
owners.
Type  'help;'  or  '\h'  for  help. Type  '\c'  to  clear  the current input statement.
mysql> create database wordpress;
Query OK, 1 row affected (0.00 sec)
mysql>  exit
Bye
[root@justin ~] #

三、安装wordpress

wKiom1LfjO-hw0JGAAGcYz-2LoI248.jpg点击【创建配置文件】→【现在就开始】进入以下界面,根据实际情况填写,以下为我的信息

wKioL1LfjX-iv-ytAAFMRtiWK88444.jpg填写完后点击【提交】→【进行安装】出现以下界面,根据实际情况填写,以下为我的信息wKioL1LfjhHTcAv7AAI3ETbMDdI286.jpg

填写完毕点击【安装wordpress】→点击【登陆】→输入帐号信息后进入博客管理界面

wKiom1LfjxTj6z10AANyfzNdgCw135.jpg




本文转自 justin_peng 51CTO博客,原文链接:http://blog.51cto.com/ityunwei2017/1353901,如需转载请自行联系原作者

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6月前
|
Java API 数据库
构建RESTful API已经成为现代Web开发的标准做法之一。Spring Boot框架因其简洁的配置、快速的启动特性及丰富的功能集而备受开发者青睐。
【10月更文挑战第11天】本文介绍如何使用Spring Boot构建在线图书管理系统的RESTful API。通过创建Spring Boot项目,定义`Book`实体类、`BookRepository`接口和`BookService`服务类,最后实现`BookController`控制器来处理HTTP请求,展示了从基础环境搭建到API测试的完整过程。
101 4
|
2月前
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
100 20
|
5月前
|
JavaScript 前端开发 开发工具
web项目规范配置(husky、eslint、lint-staged、commit)
通过上述配置,可以确保在Web项目开发过程中自动进行代码质量检查和规范化提交。Husky、ESLint、lint-staged和Commitlint共同作用,使得每次提交代码之前都会自动检查代码风格和语法问题,防止不符合规范的代码进入代码库。这不仅提高了代码质量,还保证了团队协作中的一致性。希望这些配置指南能帮助你建立高效的开发流程。
177 5
|
6月前
|
Web App开发 Java 测试技术
一、自动化:web自动化。Selenium 入门指南:从安装到实践
一、自动化:web自动化。Selenium 入门指南:从安装到实践
125 0
|
6月前
|
监控 Java Maven
springboot学习二:springboot 初创建 web 项目、修改banner、热部署插件、切换运行环境、springboot参数配置,打包项目并测试成功
这篇文章介绍了如何快速创建Spring Boot项目,包括项目的初始化、结构、打包部署、修改启动Banner、热部署、环境切换和参数配置等基础操作。
354 0
|
6月前
|
NoSQL Java 数据库连接
springBoot:整合其他框架&condition&切换web配置 (五)
本文档介绍了如何在Spring Boot项目中整合JUnit、Redis和MyBatis等框架,并提供了相应的依赖配置示例。同时,还展示了如何通过条件注解实现Bean的条件创建,以及如何切换Web服务器配置,从默认的Tomcat切换到Jetty。
|
JavaScript 前端开发 API
Hello.js – Web 服务授权的 JavaScript SDK
  Hello.js 是一个客户端的 Javascript SDK,用于实现 OAuth2 认证(或者基于 OAuth 代理实现的 OAuth1)的 Web 服务和查询 REST API。 HelloJS 标准化路径和对通用的 API 响应 ,如谷歌的数据服务, Facebook 的图形和 Windows Live 连接。
1121 0
|
1月前
|
关系型数据库 MySQL 数据库
基于Flink CDC 开发,支持Web-UI的实时KingBase 连接器,三大模式无缝切换,效率翻倍!
TIS 是一款基于Web-UI的开源大数据集成工具,通过与人大金仓Kingbase的深度整合,提供高效、灵活的实时数据集成方案。它支持增量数据监听和实时写入,兼容MySQL、PostgreSQL和Oracle模式,无需编写复杂脚本,操作简单直观,特别适合非专业开发人员使用。TIS率先实现了Kingbase CDC连接器的整合,成为业界首个开箱即用的Kingbase CDC数据同步解决方案,助力企业数字化转型。
194 5
基于Flink CDC 开发,支持Web-UI的实时KingBase 连接器,三大模式无缝切换,效率翻倍!
|
6月前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
371 3
|
1月前
|
机器学习/深度学习 开发框架 API
Python 高级编程与实战:深入理解 Web 开发与 API 设计
在前几篇文章中,我们探讨了 Python 的基础语法、面向对象编程、函数式编程、元编程、性能优化、调试技巧以及数据科学和机器学习。本文将深入探讨 Python 在 Web 开发和 API 设计中的应用,并通过实战项目帮助你掌握这些技术。

热门文章

最新文章