搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

一、快速部署LAMP架构平台

1.CentOS 6系统部署

所需安装包:httpd, php, mysql-server, php-mysql

]# yum install -y  httpd php mysql-server php-mysql
]# service httpd  start
]# service  mysqld  start

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

2.CentOS 7系统部署

FastCGI方式实现所需程序包:httpd, php-fpm, php-mysql, mariadb-server
Modules方式实现所需程序包:httpd, php, php-mysql, mariadb-server

]# yum install -y  httpd php php-mysql mariadb-server
]# systemctl  start  httpd.service
]# systemctl  start  mariadb.service
  注意:CentOS 7默认httpd使用event模型,php默认编译成模块使用,其事件机制和模块会报错,要修改MPM

二、配置主机httpd的相关信息

1.创建网站根目录

[root@localhostconf]# mkdir -pv /www/{wordpress,discuz,phpMyAdmin}

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

2.配置虚拟主机

(1)注释掉/ect/httpd/conf/httpd.conf中心主机配置段

在"DocumentRoot "/var/www/html""前加#注释掉该行配置

(2)在/etc/httpd/conf.d/下定义虚拟主机配置文件

定义www.a.com为个人博客访问地址;www.b.com  为discuz论坛的访问地址;www.c.com为phpMyAdmin访问地址
]# vim  /etc/httpd/conf.d/virtual.conf
实例(注意10.1.253.15为本机IP地址)
NameVirtualHost 10.1.253.15:80
<VirtualHost 10.1.253.15:80>
    <Directory "/www/wordpress">
        Options FollowSymLinks
        Allowoverride None
    </Directory>
    ServerName www.wordpress.com
    DocumentRoot "/www/wordpress"
</VirtualHost>
<VirtualHost10.1.253.15:80>
    <Directory "/www/discuz">
        Options FollowSymLinks
        Allowoverride None
    </Directory>
    ServerName www.discuz.com 
    DocumentRoot "/www/discuz"
</VirtualHost>
<VirtualHost10.1.253.15:80>
    <Directory "/www/phpMyAdmin">
        Options FollowSymLinks
        Allowoverride None
    </Directory>
    ServerName www.phpMyAdmin.com
    DocumentRoot "/www/phpMyAdmin"
</VirtualHost>

3.检查语法&重新加载配置文件

[root@localhostconf]# httpd -t
[root@localhostconf]# service httpd reload

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

4.外部浏览器测试(Windows本地主机)

(1)在/www/{wordpress,discuz}创建index.html作为站点主页
(2)在Windows中C:\Windows\System32\drivers\etc\host加入两条路由信息
10.1.253.15 www.a.com 
            www.b.com 
            www.c.com
(3)本地浏览器通过域名打开测试,会显示index.html信息

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

三、测试LAMP连接状态

1.httpd和php连接状态测试

(1)将任意目录下的一个index.html文件删除,新建index.php文件
(2)编辑index.php文件,写入php测试代码,显示php相关信息
<?php
    phpinfo();
?>
(3)在浏览器输入网址,显示出php相关信息则php和httpd间能连接

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

2.确认mysql是否开启,能监听到3306端口则进程开启

[root@localhostwordpress]# service mysqld start
[root@localhostwordpress]# ss -tln

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

3.测试mysql和php连接关系

(1)授权能远程的连接用户&&刷新授权表权限
MySQL的命令行客户端程序:mysql
          mysql>GRANT  ALL  PRIVILEGES ON  db_name.tbl_name TO  username@host IDENTIFIED BY 'password';
          mysql> FLUSH  PRIVILEGES;
实例解析:
    mysql> GRANT  ALL  PRIVILEGES ON  *.* TO  'root'@'10.1.%.%'  IDENTIFIED BY 'ali';
    mysql>  FLUSH PRIVILEGES;
 授权10.1网段所有主机以root用户,密码为ali,可连接所有数据库
注意:生产环境中不能用root用户、不能连接所有数据库的表、且来源主机要限定

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

(2)新建/etc/my.cnf.d/server.cnf或者直接在/etc/my.cnf的[mysql] 段修改部分配置
centos6
skip_name_resolve
innodb_file_per_table=ON
centos7
 skip_name_resolve = ON 或者skip_name_resolve =  1           防止主机名称反向解析
innodb_file_per_table = ON
(3)在index.php添加php连接mysql的测试代码
<?php
    $conn = mysql_connect('数据库主机','用户名','密码');
    if($conn)
        echo 'OK';
    else
        echo 'Failure';
?>

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

四、搭建个人博客:wordpress

1.在网页根目录下解压wordpress-4.3.1-zh_CN.zip

 [root@localhostwordpress]# unzip wordpress-4.3.1-zh_CN.zip

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

2.创建wordpressde数据库和授权账户

#mysql
   mysql> CREATE  DATABASE wpdb;
   mysql>GRANT  ALL  PRIVILEGES ON  wpdb.* TO  wpuser@'10.1.%.%'  IDENTIFIED BY 'wppass';
   mysql>  FLUSH PRIVILEGES;

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

3.创建配置文件

#cd wordpress
#cp wp-config-sample.php wp-config.php  配置文件
# setenforce 0 关闭SElinux
# iptables -F 关闭防火墙

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

4.更改 wp-config.php关于数据库的连接相关配置

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

5.访问测试:www.a.com/wordpress,则可以配置个人博客相关信息

注意,第一次访问的时间可能较长,因为会初始化数据,创建相关数据库

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

五、搭建论坛:Discuz

[root@localhost ~]# cd  /www/discuz
[root@localhostdiscuz]# unzip Discuz_X3.2_SC_UTF8.zip
[root@localhostdiscuz]# cp  -r  utility/convert/  /www/discuz/convert
[root@localhostdiscuz]# chmod -R  777 convert/
打开浏览器访问http://www.b.com/convert/进行配置

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

六、Mysql网页图形管理工具:phpMyAdmin

1.安装需哦依赖php扩展多字节包

[root@localhostpma]# yum install -y php-mbstring

2.解压phpMyAdmin-4.4.14.1-all-languages.zip

[root@localhost ~]# cd  /www/phpMyAdmin
[root@localhostphpMyAdmin]# unzip phpMyAdmin-4.0.5-all-languages.zip
[root@localhostphpMyAdmin]# ln -sv phpMyAdmin-4.0.5-all-languages pma

3.配置文件

(1)配置模板
[root@localhostphpMyAdmin]# cd pma
[root@localhostpma]# cp config.sample.inc.php config.inc.php
(2)创建随机数
[root@localhostpma]# openssl rand -base64 20
svjtbqMcDXLzyJNbz3LD6lPlKXI=
(3)编辑配置文件config.inc.php
在$cfg['blowfish_secret']= ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */位置放入生成的随机数

4.重启服务,加载php相关

[root@localhostpma]# service httpd restart

5.浏览器测试:

(1)访问http://www.c.com/pma

搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

(2)登录验证

注意:phpMyAdmin不允许空用户登录,所以要授权本地用户非空密码

使用mysqlsecureinstallation命令进行安全设定

原创文章,作者:M20-1马星,如若转载,请注明出处:http://www.178linux.com/52483

(1)
M20-1马星M20-1马星
上一篇 2016-10-17
下一篇 2016-10-17

相关推荐

  • 进程管理

    linux维护工作中,常常需要对系统上运行的程序进行管理,那么进程管理就显得相当重要。 进程初识 什么是进程?   进程是并发执行的程序在执行过程中分配和管理资源的基本单位,是一个动态概念。它代表CPU所能处理的单个任务。 什么是线程?   线程是程序流执行的最小单元,可以理解为进程中执行的一段程序片段。 进程与线程联…

    Linux干货 2016-09-07
  • grep、egrep正则表达式之初窥门径

    何谓正则表达式 正则表达式,又称正规表示法、常规表示法(Regular Expression,在代码中常简写为regex、regexp或RE),是一类字符所书写的模式,其中许多字符不表示其字面意义,而是表达控制或通配等功能。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的…

    2015-03-19
  • 设计模式 ( 十五 ) 中介者模式Mediator(对象行为型)

    1.概述 在面向对象的软件设计与开发过程中,根据“单一职责原则”,我们应该尽量将对象细化,使其只负责或呈现单一的职责,即将行为分布到各个对象中。 对于一个模块或者系统,可能由很多对象构成,而且这些对象之间可能存在相互的引用,在最坏的情况下,每一个对象都知道其他所有的对象,这无疑复杂化了对象之间的联系。虽然将一个系统分割成许多对象通常可以增强可复用性,但是对象…

    Linux干货 2015-07-20
  • 14程序包的编译安装

    在有些源代码程序没有被编译成rpm的时候,或者其他人写了一个源代码程序,要把它安装在服务器上要怎么做呢? 那就需要对源代码进行编译安装了。 C代码编译安装三步骤: 1、./configure: (1)通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定以及makefile.in文件生成makefile (2) 检查依赖到的外部环境,如依赖的软件…

    Linux干货 2016-11-27
  • 磁盘术语与磁盘管理

    磁盘术语与磁盘管理 磁盘术语 扩展1-4 逻辑5- sector 512 6位 sector 10位 track 1024 cylinder 8位head 256 0-1023 2^6=64 512*63*1024*256 cylinder=512*63*256 10M CHS 设备文件 磁盘设备的设备文件命名:/dev/DEV_FILE SCSI, SAT…

    Linux干货 2017-05-15
  • Python内置数据结构——集合set

    集合 定义 set翻译为集合 collection翻译为集合类型,是一个较大的概念 set是一个可变的、无序的、不重复的元素组成的集合 set的元素要求必须可以hash,目前已学的不可hash的类型只有list、set 元素不可以索引 set可以迭代 set的初始化 set_1 =set() #表示定义一个空集合set_1 set_1 =set(iterab…

    Linux干货 2017-10-03