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

简介

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

实验环境

  • 系统环境:centos6.5
  • 宿主机IP地址:192.168.100.20
  • yum挂载目录:/mnt/sr0
  • 相关源码包下载地址:百度云下载??密码:x32f

搭建步骤

一、安装Apache

1、准备工作,关闭防火墙及selinux

[[email protected] ~]# chkconfig iptables off #随开机关闭iptables
[[email protected] ~]# vim /etc/sysconfig/selinux

[[email protected] ~]# reboot #重启Linux生效

2、安装gcc、gcc-c++、make、arp、arp-util、pcre等工具包

[[email protected] ~]# yum -y install gcc gcc-c++ make #安装C语言编译器以及make

[[email protected] ~]# tar -zxvf apr-1.4.6.tar.gz -C /usr/src/
[[email protected] ~]# cd /usr/src/apr-1.4.6/
[[email protected] apr-1.4.6]# ./configure prefix=/usr/local/apr && make && make install

[[email protected] ~]# tar -zxvf apr-util-1.4.1.tar.gz -C /usr/src/
[ro[email protected] ~]# cd /usr/src/apr-util-1.4.1/
[[email protected] apr-util-1.4.1]# ./configure prefix=/usr/local/apr-util --with-apr=/usr/local/apr && make && make install

[[email protected] ~]# tar -zxvf pcre-8.10.tar.gz -C /usr/src
[[email protected] ~]# cd /usr/src/pcre-8.10/
[[email protected] pcre-8.10]# ./configure prefix=/usr/local/pcre && make && make install

3、配置编译安装Apache

[[email protected] ~]# tar xvfz httpd-2.4.2.tar.gz -C /usr/src/
[[email protected] ~]# cd /usr/src/httpd-2.4.2/
[[email protected] httpd-2.4.2]# ./configure \
--prefix=/usr/local/httpd \
--with-apr=/usr/local/apr \
--with-pcre=/usr/local/pcre \
--enable-so \
--enable-rewrite \
--enable-mods-shared=most \
--with-mpm=worker \
--disable-cgid \
--disable-cgi

参数解析:

prefix:指定安装目录
with-apr:apr的安装目录
with-pcre:使用扩展的pcre正则表达式库
enable-so:启用动态加载模块支持,需要什么功能可以动态加载
enable-rewrite:启用网页地址重写功能,实现伪静态
enable-mods-shared:启用的共享DSO模块
with-mpm:选择apache所使用的处理模块
disable-cgid:禁用CGID
disable-cgi:启用CGI脚本程序支持(通用网关接口)

[[email protected] httpd-2.4.2]# make && make install#编译及编译安装

4、添加系统服务

[[email protected] ~]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd #将启动脚本拷贝服务程序目录下

[[email protected] ~]# vim /etc/init.d/httpd #修改启动脚本

第2、3两行添加以下参数:

# chkconfig:2345 85 15
# description:Apache is a World Wide Web server.

[[email protected] init.d]# chmod +x /etc/init.d/httpd #添加执行权限
[[email protected] init.d]# chkconfig --add httpd #将apache添加至服务程序中

5、建立软链接,方便管理

[[email protected] ~]# mkdir -p /etc/httpd
[[email protected] ~]# ln -s /usr/local/httpd/conf/ /etc/httpd/ #优化配置文件路径
[[email protected] ~]# ln -s /usr/local/httpd/bin/* /usr/local/bin/ #优化命令路径

6、修改配置文件

[[email protected] ~]# vim /etc/httpd/conf/httpd.conf

修改以下参数:

ServerName www.bt.com:80 #填写完全主机名
Listen 192.168.100.103:80 #监听本地IP

7、重启服务、测试

[[email protected] ~]# service httpd start

二、安装Mysql

1、卸载PRM方式的mysql-server、mysql

[[email protected] ~]# rpm -qa | grep mysql

2、安装ncurses-devel、bison、libaio-devel、cmake工具包

[[email protected] ~]# yum -y install ncurses-devel bison libaio-devel cmake

3、创建进程用户mysql

[[email protected] ~]# useradd -s /sbin/nologin mysql

4、解压、配置安装mysql

[[email protected] ~]# mkdir -p /usr/local/mysql #创建mysql目录

[[email protected] ~]# tar zxvf mysql-5.5.24.tar.gz -C /usr/src
[[email protected] ~]# cd /usr/src/mysql-5.5.24/

[[email protected] mysql-5.5.24]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/home/mysql \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306

解析:

DCMAKE_INSTALL_PREFIX:mysql软件安装位置
DDEFAULT_CHARSET:默认字符集
DDEFAULT_COLLATION:默认字符校验
DWITH_EXTRA_CHARSETS:额外的编码,请使用ALL来编译
DWITH_MYISAM_STORAGE_ENGINE:安装 myisam 存储引擎
DWITH_INNOBASE_STORAGE_ENGINE:安装 innodb 存储引擎
DWITH_MEMORY_STORAGE_ENGINE:安装 memory 存储引擎
DWITH_READLINE:支持readline库,支持一行行读取数据
DENABLED_LOCAL_INFILE:启用本地加载数据
DMYSQL_DATADIR:数据目录
DMYSQL_USER:指定mysql的运行用户
DMYSQL_TCP_PORT=3306:mysql的端口号默认是3306

[[email protected] mysql-5.5.24]# make && make install #编译及编译安装

5、修改mysql安装目录的所有者,所属组

[[email protected] mysql-5.5.24]# chown -R mysql:mysql /usr/local/mysql/

6、创建修改my.cnf配置文件

[[email protected] mysql-5.5.24]# cp support-files/my-medium.cnf /etc/my.cnf

7、添加系统服务

[[email protected] mysql-5.5.24]# vim /etc/profile #修改系统环境变量

最后一行添加:
export PATH=$PATH:/usr/local/mysql/bin/

[[email protected] mysql-5.5.24]# source /etc/profile #重新读取系统环境变量

[[email protected] mysql-5.5.24]# cp support-files/mysql.server /etc/init.d/mysqld #添加系统服务
[[email protected] mysql-5.5.24]# chmod +x /etc/init.d/mysqld #添加执行权限
[[email protected] mysql-5.5.24]# chkconfig --add mysqld #将mysqld添加为系统服务

8、初始化数据库

[[email protected] mysql-5.5.24]# /usr/local/mysql/scripts/mysql_install_db
--user=mysql
--ldata=/var/lib/mysql
--basedir=/usr/local/mysql
--datadir=/home/mysql

解析:
user:指定数据库管理员,也就是是谁管理数据库
basedir:指定mysql软件安装位置
datadir:指定mysql数据安装位置

[[email protected] mysql-5.5.24]# vim /etc/init.d/mysqld

找到basedir、datadir进行赋值:

basedir=/usr/local/mysql #约46行数据库安装目录
datadir=/home/mysql #约47行数据存放目录

9、重新启动数据库

[[email protected] mysql-5.5.24]# service mysqld start
[[email protected] mysql-5.5.24]# netstat -anpt | grep 3306 #查看端口

10、访问mysql

[[email protected] ~]# mysqladmin -u root password ‘123‘#设置新密码
[[email protected] ~]# mysql -uroot -p123 #登录mysql

三、安装PHP

1、安装GD库关联程序

[[email protected] ~]# yum install \
libjpeg-devel \
libpng-devel \
freetype-devel \
zlib-devel \
gettext-devel \
libXpm-devel \
libxml2-devel \
fontconfig-devel \
openssl-devel \
bzip2-devel

2、解压、配置安装gd(用来处理和生成图片)

[[email protected] ~]# tar xzvf gd-2.0.35.tar.gz -C /usr/src/
[[email protected] ~]# cd /usr/src/gd/2.0.35/
[[email protected] 2.0.35]# ./configure --prefix=/usr/local/gd
[[email protected] 2.0.35]# make && make install

3、解压配置安装php

[[email protected] ~]# tar xjvf php-5.4.5.tar.bz2 -C /usr/src
[[email protected] ~]# cd /usr/src/php-5.4.5/
[[email protected] php-5.4.5]# ./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/httpd/bin/apxs \
--with-gd \
--with-mysql=/usr/local/mysql \
--with-config-file-path=/etc \
--enable-sqlite-utf8 \
--with-zlib-dir \
--with-libxml-dir \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-ttf \
--with-iconv \
--with-openssl \
--with-gettext \
--enable-mbstring \
--enable-gd-native-ttf \
--enable-gd-jis-conv \
--enable-static \
--enable-zend-multibyte \
--enable-inline-optimization \
--enable-sockets \
--enable-soap \
--enable-ftp \
--disable-ipv6
[[email protected] php-5.4.5]# make && make install

4、创建PHP配置文件

[[email protected] ~]# cp php.ini-production /etc/php.ini

5、修改Apache配置文件

[[email protected] ~]# vim /usr/local/httpd/conf/httpd.conf

约143行检查下面这条语句是否存在,如果不存在还需要重新安装mysql,如果还没有,直接重装apache:

LoadModule php5_module modules/libphp5.so

约242行添加php首页识别:

<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>

约348添加支持PHP后缀:

<IfModule mime_module>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
<IfModule mime_module>

6、重新启动Apache

[[email protected] php-5.4.5]# /etc/init.d/httpd restart

7、测试PHP网页能否正常显示

[[email protected] ~]# cd /usr/local/httpd/htdocs/ #进入站点目录
[[email protected] php-5.4.5]# vim test1.php #建立测试页

添加PHP测试内容:

<?php
phpinfo();
?>

8、测试PHP网页能访问MySQL服务器

[[email protected] ~]# vim /usr/local/httpd/htdocs/test2.php

添加PHP测试内容:

<?php
$link=mysql_connect(‘localhost‘,‘root‘,‘123‘);
if($link) echo "Welcome to Mysql";
mysql_close();
?>

四、论坛安装

1、创建相关数据库

[[email protected] ~]# mysql -uroot -p123#登录mysql

mysql> CREATE DATABASE bbs; #创建一个数据库
mysql> GRANT all ON bbs.* TO ‘bbsuser‘@‘%‘ IDENTIFIED BY ‘admin123‘; #把bbs数据库里面所有表的权限授予给bbsuser,并设置密码
mysql>flush privileges; #刷新数据库

2、解压论坛源码包

[[email protected] ~]# unzip Discuz_X2.5_SC_UTF8.zip -d /usr/src #解压
[[email protected] ~]# cp -r /usr/src/upload/ /usr/local/httpd/htdocs/bbs #将源码拷贝到站点目录下

3、修改论坛文件所属权限

[[email protected] ~]# cd /usr/local/httpd/htdocs/bbs
[[email protected] bbs]# chown -R daemon ./config/ #递归修改所有者权限
[[email protected] bbs]# chown -R daemon ./data/
[[email protected] bbs]# chown -R daemon ./uc_client/
[[email protected] bbs]# chown -R daemon ./uc_server/data/

[[email protected] ~]# vim /etc/php.ini

约919行,将注释去掉,将值赋予UTC,否则使用URL安装会报错

date.timezone = UTC

4、安装论坛

原文地址:http://blog.51cto.com/11905606/2160911

时间: 2025-01-03 17:16:45

源码手工编译LAMP架构搭建Discuz论坛(内附源码包)的相关文章

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

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

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

CetOS7.4手工编译安装mysql-5.7.17(内附源码包)

简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle旗下产品.MySQL是最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的关系数据库管理系统应用软件.MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性.MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言.MySQL软件采用了双授权政策,分为社区版和商业版,由于其体积小.速度快.总体拥有成

编译安装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论坛(实战!!)

LAMP平台概述 目前最为成熟的一种企业网站应用模式,可提供动态Web站点应 用及开发环境 构成组件 Linux.Apache.MySQL. PHP/Perl/Python LAMP的优势 成本低廉 可定制.易于开发 方便易用,安全和稳定 一,在Windows上将LAMP所需压缩软件包共享出来(此处如有问题请看之前的博客相关文章) 二,在Linux上使用远程共享获取文件并挂载到mnt目录下 [email protected] ~]# smbclient -L //192.168.10.37/ S

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请求转交