前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【腾讯云的1001种玩法】LAMP架构实现动态网站论坛系统

【腾讯云的1001种玩法】LAMP架构实现动态网站论坛系统

原创
作者头像
魏豪
修改2017-06-19 19:10:35
3.3K0
修改2017-06-19 19:10:35
举报
文章被收录于专栏:魏豪的专栏

项目背景

LAMP架构,全称为Linux + Apache + Mariadb + PHP,是一种强大的网站解决方案。LAMP是多个开源项目的首字母缩写。LAMP网站架构主要应用于动态网站的Web架构,这种Web架构具有通用性,跨平台,高性能,高负载,稳定等特性,是目前企业部署网站的首选平台。

同时,我们也看到了Nginx在国内的应用越来越成熟,相对于Apache而言,Nginx对于静态文件的响应能力要远远高于Apache服务器,所以近几年也兴起了LNMP架构。但是对于负载PHP的网站而言,Apache仍然是目前的首选平台。下图为网站架构案例结构图,通过基于域名的虚拟主机实现在一台Apache服务器上运行论坛系统,论坛域名为bbs.cc.cn

项目目标

  1. 搭建DNS服务器以提供域名bbs.cc.com对应ip地址192.168.4.7的解析记录
  2. 搭建Linux + Apache + Mariadb + PHP动态网站平台
  3. 部署“云计算技术交流论坛“

项目分析

  1. 在服务器搭建DNS域名解析。安装BIND软件包以提供DNS服务
  2. 服务器搭建LAMP动态网站平台。在Linux服务器上安装http,mariadb,php,Discuz! 等软件包。
  3. 在LAMP架构上部署bbs.cc.com论坛。

项目实现过程

搭建DNS服务器

  1. 安装提供DNS服务的软件包
代码语言:javascript
复制
# yum -y install bind bind-chroot
  1. 编写主配置文件
代码语言:javascript
复制
# vim /etc/named.conf
#
# options {
#        directory "/var/named"; 
#        };
#
# zone "cc.com" IN {
#        type master;
#        file "cc.com.zone";
#        };
#

3.编写地址库文件

代码语言:javascript
复制
# vim cc.com.zone
# $TTL 1D
@       IN   SOA  @ rname.invalid. (
                0       ; seria
                1D      ; refresh
                1H      ; retry
                1W      ; expire
                3H )    ; minimum
#
# @      IN      NS            bbs.cc.com.
# bbs    IN      A             192.168.4.2

4.重启服务

代码语言:javascript
复制
# systemctl restart named

5.测试DNS服务

代码语言:javascript
复制
# host bbs.cc.com

搭建Linux + Apache + Mariadb + PHP动态网站平台

  1. 给服务器安装Linux操作系统,此处不再赘述。可参考本人PXE+kickstart自动安装操作系统技术博客。
  2. Apache:使用中最受欢迎的一个开放源码的WEB服务器软件。软件包:http;服务:httpd

安装软件包:

代码语言:javascript
复制
# yum -y install http

重启服务:

代码语言:javascript
复制
# systemctl restart httpd

搭建虚拟web主机并配置虚拟站点bbs.cc.com

代码语言:javascript
复制
# mkdir /var/www/bbs                     //创建虚拟站点网页根目录bbs
# vim /etc/httpd/conf.d/00-default.conf  //部署虚拟站点的主配置文件
# <VirtualHost *:80>                     //固定格式以及监听端口
#     ServerName    bbs.cc.com           //指定虚拟站点名
#     DocumentRoot  /var/www/bbs         //指定虚拟站点网页根目录
# </VirtualHost>                         //固定格式
  1. Mariadb:多线程,多用户的SQL数据库管理系统。软件包:mariadbmariadb-server;服务:mariadb

安装软件包:

代码语言:javascript
复制
    # yum -y install mariadb mariadb-server

重启服务

代码语言:javascript
复制
# systemctl restart mariadb

创建论坛管理员账户

代码语言:javascript
复制
# mysqladmin -uroot -p123456             //创建root用户管理数据库
# mysql -uroot -p123456                  //进入数据库
# create databases bbsdb;                //创建bbsdb数据库
# grant all on bbsdb.* to mayweis@localhost identified by 'mayweis';  
#                                        //授权mayweis为bbsdb数据库以及论坛管理员
  1. PHP:一种编程语言,最初用于设计生产动态网站。与PERL,PYTHON类似。软件包:php php-mysql

安装软件包:

代码语言:javascript
复制
# yum -y install php php-mysql

部署"云计算技术交流论坛"

  1. 解压Discuz!_X3.3_SC_UTF8.zip
代码语言:javascript
复制
# unzip Discuz!_X3.3_SC_UTF8.zip -d /var/www/bbs/
  1. 网页访问http://bbs.cc.com/upload, 项目展示结果如下:

点击我同意进行安装。

  • 开始安装以及安装过程,如图:
  • 显示目录不存在,由于/var/www/bbs/upload/下的data,config,uc_server,uc_client目录不属于apache用户。将这些目录属主改为apache。
代码语言:javascript
复制
 # chown -R apache /var/www/bbs/upload/{data/,config/,uc_*}
  • 安装数据库过程如图:
  • 初始化论坛系统及完善信息如图:
  • 输入数据库名:bbsdb
  • 数据库用户名:mayweis
  • 数据库密码:mayweis
  • 设置管理员帐号和管理员密码
  • 安装完成后的论坛结果展示如下图:

注意事项

  1. 注意需要安装的软件包不可少
  2. 需要将/var/www/bbs/upload/{data/,config/,uc_*}目录属主改为apache。
  3. 注意填写数据库信息时不可出错。

阁主点评:云主机CVM的玩法很多,本文作者在这里至少演示了两种:用于DNS解析,和Discuz!论坛部署。其中后者对于想搭建个人站点(包括博客、论坛)的人参考意义可能更大。我们梳理汇总了一系列的文章,制作了《如何从0到1搭建个人站点》专题,希望能够帮助朋友们快速地上线自己的第一个网站。

相关推荐

CentOS6.5系统yum安装LAMP环境 CentOS 7.0安装配置LAMP服务器(Apache+PHP+MariaDB)

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 项目背景
  • 项目目标
  • 项目分析
  • 项目实现过程
    • 搭建DNS服务器
      • 搭建Linux + Apache + Mariadb + PHP动态网站平台
        • 部署"云计算技术交流论坛"
        • 注意事项
        相关产品与服务
        Discuz!
        Discuz! 是全球领先的论坛社区应用系统,自2001年6月面世以来,服务超过300多万网站用户案例。现在,借助 Discuz! ,您不仅可以使用搭建传统的社区论坛,更可轻易的构建面向移动互联网时代的私域流量和社交圈子类的应用,并快速启动业务。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档