LAMP架构之Discuz论坛(实战!!)

LAMP平台概述

目前最为成熟的一种企业网站应用模式,可提供动态Web站点应
用及开发环境

构成组件

Linux、Apache、MySQL、 PHP/Perl/Python

LAMP的优势

成本低廉
可定制、易于开发
方便易用,安全和稳定

一,在Windows上将LAMP所需压缩软件包共享出来(此处如有问题请看之前的博客相关文章)

二,在Linux上使用远程共享获取文件并挂载到mnt目录下

[email protected] ~]# smbclient -L //192.168.10.37/
    Sharename       Type      Comment
    ---------       ----      -------
    LAMP-C7         Disk      

[[email protected] ~]# mount.cifs //192.168.10.37/LAMP-C7 /mnt
//远程挂载软件包到/mnt目录

[[email protected] ~]# cd /mnt                      //进入/mnt目录
[[email protected] mnt]# ls                            //查看获取到的源码包
apr-1.6.2.tar.gz         install_lamp.sh
apr-util-1.6.0.tar.gz    mysql-5.6.26.tar.gz
Discuz_X2.5_SC_UTF8.zip  php-5.6.11.tar.bz2
httpd-2.4.29.tar.bz2

三,编译安装Apache

1,将源码包解压到/opt目录下

[[email protected] mnt]# tar zxvf apr-1.6.2.tar.gz -C /opt/
...
[[email protected] mnt]# tar zxvf apr-util-1.6.0.tar.gz -C /opt/
....
[[email protected] mnt]# tar jxvf httpd-2.4.29.tar.bz2 -C /opt/
...
[[email protected] mnt]# cd /opt                        //进入/opt目录
[[email protected] opt]# ls                             //查看解压的文件
apr-1.6.2  apr-util-1.6.0  httpd-2.4.29  rh

2,将apr组件包移动到http中并安装编译工具

[[email protected] opt]# mv apr-1.6.2/ httpd-2.4.29/srclib/apr
[[email protected] opt]#  mv apr-util-1.6.0/ httpd-2.4.29/srclib/apr-util
[[email protected] opt]# yum -y install gcc \                                       //c语言
gcc-c++ \                        //c++语言
make \                              //编译工具
pcre-devel \                     //pcre语言工具
expat-devel \                   //识别标签性语言工具
perl                                 //perl编译器  

3,配置安装目录及各种模块

[[email protected] opt]# cd /opt/httpd-2.4.29/
[[email protected] httpd-2.4.29]#./configure \                      //配置
> --prefix=/usr/local/httpd \
> --enable-so \      //apache核心模块开启
> --enable-rewrite \    //开启重写功能,防盗链
> --enable-charset-lite \  //支持字符集,简体中文
> --enable-cgi   //通用网关接口
... 

4,编译和安装

[[email protected] httpd-2.4.29]# make              //生成可执行的二进制文件
...
[[email protected] httpd-2.4.29]# make install  //复制二进制文件到系统,配置应用环境
...

5,替换启动脚本并配置http文件参数

[[email protected] httpd-2.4.29]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd                       //复制apache启动脚本覆盖httpd原始的启动脚本
[[email protected] httpd-2.4.29]# vim /etc/init.d/httpd
#!/bin/sh
# chkconfig: 35 85 21
# description: Apache is a World Wide Web server            //在#!/bin/sh下行插入这两行内容
[[email protected] httpd-2.4.29]# chkconfig --add httpd         //将httpd加入到SERVICE管理器中
[[email protected] httpd-2.4.29]# vim /usr/local/httpd/conf/httpd.conf          

输入/ServerName,找到:ServerName www.example.com:80  把前面的#号注释删除
//域名可以自行修改,此处保留原有不变

输入/Listen,查找80端口监听,并开启监听本主机的80端口 Listen 192.168.235.137: 80
//监听地址根据各设备IP地址而定
#Listen 192.168.235.137:80
Listen 80

[[email protected] httpd-2.4.29]# httpd -t              //检查配置文件语法
Syntax OK

6,创建软连接,方便管理

[[email protected] httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/
[[email protected] httpd-2.4.29]# ln -s /usr/local/httpd/bin/* /usr/local/bin/

7,关闭防火墙并开启服务

[[email protected] httpd-2.4.29]# systemctl stop firewalld.service  ##关闭防火墙
[[email protected] httpd-2.4.29]# setenforce 0 ##关闭增强功能
[[email protected] httpd-2.4.29]# service httpd start  ##启动http服务
[[email protected] httpd-2.4.29]# netstat -ntuap | grep httpd  ##查看http端口
tcp6       0      0 :::80                   :::*                    LISTEN      73975/httpd  

四,编译安装MySQL

1,安装环境包并解压软件包到/opt下

[[email protected] mnt]# yum install -y ncurses-devel autoconf cmake            //安装环境包和Cmake工具包
[[email protected] mnt]# tar zxvf mysql-5.6.26.tar.gz -C /opt/          //解压数据库的软件包解压缩到/opt目录

2,配置MySQL的安装目录及其他模块配置

[[email protected] mnt]# cd /opt        //进入/opt目录查看解压文件
[[email protected] opt]# ls
httpd-2.4.29  mysql-5.6.26  rh
[[email protected] opt]#cd /opt/mysql-5.6.26/           //进入数据库目录
[[email protected] mysql-5.6.26]# cmake  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \       //指定安装路径
-DDEFAULT_CHARSET=utf8 \                        //指定字符集
-DDEFAULT_COLLATION=utf8_general_ci \           //指定字符集默认
-DEXTRA_CHARSETS=all \                          //指定扩展字符集
-DSYSCONFIDIR=/etc \                        //指定配置文件目录
-DMYSQL_DATADIR=/home/mysql/ \              //指定数据库里的数据文件
-DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock        //定义sock文件连接数据库文件

3,编辑及安装

[[email protected] mysql-5.6.26]# make
...

[[email protected] mysql-5.6.26]# make install
...

4,配置MySQL数据库

[[email protected] mysql-5.6.26]# cp support-files/my-default.cnf /etc/my.cnf
cp:是否覆盖"/etc/my.cnf"? yes
[[email protected] mysql-5.6.26]# cp support-files/mysql.server /etc/init.d/mysqld
cp:是否覆盖"/etc/init.d/mysqld"? yes
[[email protected] mysql-5.6.26]# chmod 755 /etc/init.d/mysqld      //授予执行权限
[[email protected] mysql-5.6.26]# chkconfig --add /etc/init.d/mysqld
//将数据库服务添加到管理器中
[[email protected] mysql-5.6.26]# chkconfig  mysqld --level 235 on
//开启数据库的2,3,5运行级别
[[email protected] mysql-5.6.26]# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile            //启用数据库命令到系统环境变量
[[email protected] mysql-5.6.26]# source /etc/profile       //启用系统环境变量
[[email protected] mysql-5.6.26]# echo $PATH            //查看系统环境变量
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin
[[email protected] mysql-5.6.26]# useradd -s /sbin/nologin mysql        //创建mysql程序用户,禁止登录数据库
[[email protected] mysql-5.6.26]# chown -R mysql:mysql /usr/local/mysql/            //给/usr/local/mysql/目录下所有用户提权

[[email protected] mysql-5.6.26]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --ldata=/var/lib/mysql --basedir=/usr/local/mysql --datadir=/home/mysql
//初始化数据库,并指定用户数据信息到指定目录
[[email protected] mysql-5.6.26]# vim /etc/init.d/mysqld        //编辑数据库配置文件
在第46行指定数据库本地路径
basedir=/usr/local/mysql
在第47行指定数据库存放位置
datadir=/home/mysql

5,开启数据库并查看端口号,设置数据库用户密码

[[email protected] mysql-5.6.26]# service mysqld start          //开启数据库服务
Starting MySQL. SUCCESS! 

[[email protected] mysql-5.6.26]# netstat -anpt | grep 3306         //查看数据库的监听端口3306
tcp6       0      0 :::3306                 :::*                    LISTEN      90105/mysqld
[[email protected] mysql-5.6.26]# mysqladmin -u root -p password "abc123"           //设定数据库的root用户的密码

五,安装PHP

1,安装php环境并解压源码包到/opt下

[[email protected] ~]# yum install -y gd libpng libpng-devel pcre pcre-devel libxml2-devel libjpeg-devel                    //安装PHP环境
[[email protected] ~]# cd /mnt
[[email protected] mnt]# tar jxvf php-5.6.11.tar.bz2 -C /opt/           //解压PHP源码包

2,配置PHP相关参数及关联数据库和http服务

[[email protected] mnt]# cd /opt/php-5.6.11/    //进入/opt/php-5.6.11/目录
[[email protected] php-5.6.11]# ./configure --prefix=/usr/local/php5 --with-gd --with-zlib --with-apxs2=/usr/local/httpd/bin/apxs --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php5 --enable-mbstring           //配置PHP相关组件及关联数据库与httpd的服务

3,编辑及安装

[[email protected] php-5.6.11]# make            //编译,注意编译完切勿进行测试
...
[[email protected] php-5.6.11]# make install        //安装
...

4,创建软连接并配置http配置文件

[[email protected] php-5.6.11]# cp php.ini-development /usr/local/php5/php.ini
//复制配置文件到php.ini目录中
[[email protected] php-5.6.11]# ln -s /usr/local/php5/bin/* /usr/local/bin/
//建立PHP命令软链接
[[email protected] php-5.6.11]# vim /etc/httpd.conf
//编辑httpd配置文件

//在第256行的DirectoryIndex index.html中将index.html替换成index.php即可

255 <IfModule dir_module>
256     DirectoryIndex index.php
257 </IfModule>

//再在后面换行追加以下两行条目授予PHP执行权限
        AddType application/x-httpd-php .php
        AddType application/x-httpd-php-source .phps

5,编辑PHP首页信息,并重启http服务

[[email protected] php-5.6.11]# vim /usr/local/httpd/htdocs/index.php                   //编辑PHP首页文件,写入以下信息
<?php
phpinfo();
?>
[[email protected] php-5.6.11]# service httpd restart           //重启httpd服务

6,验证PHP测试网页

六,安装Discuz论坛软件

1,解压缩压缩包到/opt下,并将目录内容复制到http站点中

[[email protected] php-5.6.11]#cd /mnt
//进入/mnt目录
[[email protected] mnt]# unzip Discuz_X2.5_SC_UTF8.zip -d /opt/Discuz
//解压论坛组件包到/opt目录
[[email protected] mnt]# cp -r /opt/Discuz/upload/ /usr/local/httpd/htdocs/bbs
//复制/opt目录里的内容到httpd站点的bbs目录中

2,进入数据库创建bbs数据库并设置管理员和密码

[[email protected] mnt]# mysql -u root -p
//进入数据库,密码为之前设定的abc23
mysql> create database bbs;
//创建bbs数据库
mysql> GRANT all ON bbs.* TO ‘bbsuser‘@‘192.168.235.137‘ IDENTIFIED BY ‘admin123‘;
//提权数据库用户bbsuser为管理员并设定密码
mysql> flush privileges;
//刷新数据库
mysql> quit
//退出数据库

3,进入站点并给程序用户提权

[[email protected] mnt]# cd /usr/local/httpd/htdocs/bbs/
//进入bbs目录
[[email protected] bbs]# chown -R daemon ./config/
[[email protected] bbs]# chown -R daemon ./data/
[[email protected] bbs]# chown -R daemon ./uc_client/data/cache/[[email protected] bbs]# chown -R daemon ./uc_server/data/
//为各程序用户提升权限

4,访问192.168.235.137/bbs站点,安装Discuz论坛

5,设置运行环境为全新安装

6,安装数据库

数据服务器:192.168.235.137(此处输入创建数据库主机的IP)
数据库名:bbs
数据库用户名:bbsuser(用户名可在命令行修改)
数据库密码:admin123(密码可在命令行修改)
管理员账号:admin(该账号为默认)
密码:123123(密码可直接在网页设定)

七,安装完成,进入论坛首页,一个完整的结构搭建完成了

谢谢阅读!!

原文地址:https://blog.51cto.com/14080162/2444331

时间: 2024-10-14 17:12:38

LAMP架构之Discuz论坛(实战!!)的相关文章

LAMP架构搭建+Discuz论坛搭建【weber出品必属精品】

一.     本机简介: 本机系统: CentOS-6.4-x86_64 主机名:oracle.ywb IP地址:192.168.146.129 二.     在Linux环境下安装Apache步骤 首先将准备好的文件通过PSCP发送至Linux的/Root/test/soft目录下 在windows下按住Ctrl+R,打开运行,输入CMD进入DOS命令行.在dos命令行中使用pscp –scp  命令将要上传的文件上传至Linux中. 上传成功后.我们总共要安装四个文件.第一个我们首先解压:a

采用lamp架构搭建discuz论坛

lamp简介 LAMP指的Linux(操作系统).ApacheHTTP 服务器,MySQL(有时也指MariaDB,数据库软件) 和PHP(有时也是指Perl或Python) 的第一个字母,一般用来建立web 服务器. Linux+Apache+Mysql/MariaDB+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件 下面给大家讲解一个lamp结构论坛的案例 1.安装所需软件包 [[email protected] ~]# yum install httpd mysq

LAMP架构搭建Discuz论坛,纯干货!大家都在看!

实验目录: 一.LAMP架构概念 二.LAMP结构的安装与配置 2-1 手工编译安装http服务 2-2 手工编译安装mysql数据库 2-3 手工编译安装PHP工具 三.安装Discuz论坛(开源论坛) 四.小福利 一.LAMP架构概念 LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写: Linux,操作系统 Apache,网页服务器 MariaDB或MySQL,数据库管理系统(或者数据库服务器) PHP.Perl或Python,脚本语言 是目前最为成熟的一-种企业

利用lamp架构搭建Discuz论坛,并实现对数据库的高可用

lamp架构=LAMP指的Linux(操作系统).Apache(HTTP 服务器),MySQL(数据库软件) 和PHP(有时也是指Perl或Python) 的第一个字母,一般用来建立web 服务器. #############源码安装php########### tar jxf php-5.6.20.tar.bz2 cd php-5.6.20 解决依赖性: yum install freetype-devel libmcrypt-2.5.8-9.el6.x86_64.rpm net-snmp-d

编译安装LAMP架构之Discuz论坛

(写在前面:本篇内容较长,请小伙伴备好咖啡或红牛食用)源码包(无密码):https://pan.baidu.com/s/1W8WQ0RQGGY9_iKiskEdOoQ&shfl=sharepset LAMP平台概述 目前最为成熟的一种企业网站应用模式,可提供动态Web站点应用及开发环境 构成组件 Linux.Apache.MySQL. PHP/Perl/Python LAMP的优势 成本低廉可定制.易于开发 编译安装实验步骤 第一步:通过Windows下载并共享LAMP软件包 第二步:在Linu

源码手工编译LAMP架构搭建Discuz论坛(内附源码包)

简介 Linux+Apache+Mysql/MariaDB+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台.随着开源潮流的蓬勃发展,开放源代码的LAMP已经与J2EE和.Net商业软件形成三足鼎立之势,并且该软件开发的项目在软件方面的投资成本较低,因此受到整个IT界的关注.从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决

4-源码方式基于LAMP架构搭建BBS论坛或者博客

目录 一.项目简介 二.环境准备 三.编译安装MySQL 四.编译安装Apache 五.编译安装PHP 六.后续配置 七.启动相关服务 八.源码编译软件经验总结 九.部署web应用 排错1: 排错2: 排错3: 大功告成! 课程目标 使用源码方式基于LAMP架构搭建BBS论坛或者博客 本文成功搭建2个网站,一个个人博客,一个是web界面管理mysql数据库的应用 请耐心阅读,细心操作,你也会成功! 思考:yum工具搭建lamp环境和源码包搭建的区别 rpm版本 安装方便,升级.卸载都很灵活,很难

LNMP架构之Discuz论坛(实战!!)

LNMP架构 LNMP平台就是Linux,Nginx,MySQL,PHP的组合架构,需要Linux服务器,MySQL服务器,PHP解析环境 构成组件 Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统. Nginx是一个高性能的HTTP和反向代理服务器. Mysql是一个小型关系型数据库管理系统. PHP是一种在服务器端执行的嵌入HTML文档的脚本语言. LAMP优势 Nginx性能稳定.功能丰富.运维简单.处理静态文件速度快且消耗系统资源极少,小巧高效. 一,在Windo

LNMP架构搭建Discuz论坛(实战!)

什么是LNMP架构 LNMP平台就是Linux.Ngnix. MySQL. PHP的组合架构,需要Linux服务器.MySQL数据库.PHP解析环境 MySQL安装配置 为了与Nginx.PHP环境保持一致,此处选择采用源代码编译的方式安装MySQL组件 MySQL部署的方法 编译安装MySQL 优化调整 初始化数据库 启动mysq|服务并设置root数据库账号的密码 PHP解析环境的安装 配置网页动静分离,解析PHP,有两种方法可以选择 使用PHP的FPM模块 将访问PHP页面的Web请求转交