LAMP搭建DISCU!论坛

试验机为centos6.8 i686

应用的包

  mysql-5.1.73-linux-i686-glibc23.tar.gz

  httpd-2.2.24.tar.bz2

  php-5.4.44.tar.gz

  Discuz_X3.2_SC_GBK.zip


mysql

下载

cd /usr/local/src/
wget http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.73-linux-i686-glibc23.tar.gz

初始化

 tar zxvf /usr/local/src/mysql-5.1.-linux-i686-icc-glibc23.tar.gz //解压
mv mysql-5.1.-linux-i686-icc-glibc23 /usr/local/mysql //挪动位置
useradd -s /sbin/nologin mysql //建立 mysql 用户
cd /usr/local/mysql
mkdir -p /data/mysql // 创建 datadir,数据库文件会放到这里面
chown -R mysql:mysql /data/mysql //更改权限
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql --user 定义数据库的所属主,--datadir 定义数据库安装到哪里

验证一下 echo $?

常见问题

(1)错误: ./bin/mysqld: error while loading shared libraries: libstdc++.so.5: cannot
      open shared object file:
    解决:
      yum install -y compat-libstdc++-33
(2)错误:./scripts/mysql_install_db: ./bin/my_print_defaults: /lib/ld-linux.so.2: bad
      ELF interpreter: No such file or directory
    这是因为,你的系统版本和 mysql 版本不一致。比如,你的系统是 32 位,结果你下载
    了一个 64 位的包。所以,解决办法是,下载合适的包。

配置 
  拷贝配置文件
  

  cp support-files/my-large.cnf /etc/my.cnf

  拷贝启动脚本文件并修改其属性
  

  cp support-files/mysql.server /etc/init.d/mysqld
  chmod /etc/init.d/mysqld

  修改启动脚本
  

  vim /etc/init.d/mysqld
  修改的地方 “datadir=/data/mysql” (前面初始化数据库时定义的目录)

 

 把启动脚本加入系统服务项,设定开机启动并启动 mysql
  
  

  chkconfig --add mysqld
  chkconfig mysqld on
  service mysqld start

常见问题
    如果启动不了,请到 /data/mysql/ 下查看错误日志,这个日志通常是主机名.err。

    检查mysql 是否启动的命令为:

    
    

   ps aux |grep mysqld


Apache

下载

 cd /usr/local/src/
wget http://www.lishiming.net/data/attachment/forum/httpd-2.2.24.tar.bz2

解压

 tar jvxf httpd-2.2..tar.bz2

配置编译参数

cd httpd-2.2.
./configure --prefix=/usr/local/apache2 --enable-mods-shared=most --enable-so
--prefix 指定安装到哪里, --enable-so 表示启用 DSO

常见问题

  (1)

  (2)

  错误

  error: mod_deflate has been requested but can not be built due to prerequisite failures

  解决:
  yum install -y zlib-devel

编译和安装

 make
make install

查看 apache 工作模式的命令

/usr/local/apache2/bin/apachectl -M
Loaded Modules:
core_module (static)
authn_file_module (static)
authn_default_module (static)
authz_host_module (static)
authz_groupfile_module (static)
authz_user_module (static)
authz_default_module (static)
auth_basic_module (static)
include_module (static)
filter_module (static)
log_config_module (static)
env_module (static)
setenvif_module (static)
version_module (static)
mpm_prefork_module (static)
http_module (static)
mime_module (static)
status_module (static)
autoindex_module (static)
asis_module (static)
cgi_module (static)
negotiation_module (static)
dir_module (static)
actions_module (static)
userdir_module (static)
alias_module (static)
so_module (static)
deflate_module (shared)
expires_module (shared)
rewrite_module (shared)
通过这个命令也可以看到哪些模块时动态,哪些是静态。

php

下载

 cd /usr/local/src
wget http://cn2.php.net/distributions/php-5.4.44.tar.gz

解压源码包

 tar zxf php-5.4..tar.gz

配置编译参数

cd php-5.4.
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc
--with-mysql=/usr/local/mysql/ --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir
--with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif --disable-ipv6

常见问题

  安装过程中出现下面这样的错误,说明系统内缺少库文件

  解决的方法是用

  yum list |grep openssl

  查看库文件包名

  再yum install 进行安装

  如果centos内没有那个库文件yum install -y epel-release安装epel,再安装库文件.

编译安装

 make
make install

配置

  

  1)拷贝 php 配置文件:
  

  cp php.ini-production /usr/local/php/etc/php.ini

  2)修改 apache 配置文件
  

  vi /usr/local/apache2/conf/httpd.conf
  找到:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
  改为:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>
  找到:
AddType application/x-gzip .gz .tgz
  在该行下面添加:
AddType application/x-httpd-php .php
说明,要想支持 php 脚本解析,必须要加上对应的类型。
  找到:
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
  将该行改为:
<IfModule dir_module>
DirectoryIndex index.html index.htm index.php
</IfModule>
说明: 增加针对 php 的索引,如果一个站点默认页为 index.php,那么就得加上这个
index.php 的支持。
找到:
#ServerName www.example.com:
修改为:
ServerName localhost:

查看配置文件是否有问题

 /usr/local/apache2/bin/apachectl -t

如果显示 Syntax OK,说明配置没问题了。

启动服务

 

/usr/local/apache2/bin/apachectl start

检查 apache 是否正常启动

ps aux |grep httpd

看有没有进程列表。

测试 php 解析

vi /usr/local/apache2/htdocs/.php
写入:
<?php
echo "php works.";
?>
保存后,继续测试:
curl localhost/.php

php works. 只有显示这个信息,才算正常解析。如果你的访问不太顺畅,请检测
iptables 规则。

 iptables -nvL
iptables -F
service iptables save

安装 Discuz !

下载

mkdir /data/www  创建目录
cd /data/www
wget http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_GBK.zip
unzip Discuz_X3.2_SC_GBK.zip
mv upload/* .

配置第一个虚拟主机
  删除vim /usr/local/apache2/conf/httpd.conf中的下面这行前面的警号
 

  Include conf/extra/httpd-vhosts.conf

  编辑该配置文件
 

   vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
  在最后面,加入如下配置:
  <VirtualHost *:>
  DocumentRoot "/data/www"
  ServerName www.spiro.com
  </VirtualHost>

  先检查配置是否正确

  /usr/local/apache2/bin/apachectl -t

  

  重启 apache 服务
  

   /usr/local/apache2/bin/apachectl restart

配置 mysql ,给 Discuz !增加一个账户
    给 mysql root 账户设置密码,然后命令行进入 mysql,创建新的库,并创建一个新的帐
    号对该库有所有权限:

 /usrl/local/mysql/bin/mysql -uroot
这样就可以进入到 mysql 命令行内部,接着输入下面的命令,最前面的>不用输入。
> create database discuz;
> grant all on discuz.* to 'spiro'@'localhost' identified by '';
> quit

mysql账户是spiro,密码是123456

安装 Discuz !

  在浏览器输入:
  http://www.spiro.com/install/
  根据提示,修改对应目录的权限
  

cd /data/www
chown -R daemon:daemon data uc_server/data uc_client/data config

  让这几个目录支持 apache 运行帐号可写,daemon 就是 apache 的运行账号,在
  /usr/local/apache2/conf/httpd.conf 中用 User 和 Group 定义的。

Linux:LAMP搭建DISCU!论坛的更多相关文章

  1. LAMP搭建Discuz论坛

    搭建Discuz论坛 1.  准备LAMP环境 LAMP是Linux,Apache,MySql和PHP的缩写,是Discuz论坛系统依赖的基础运行环境 1.安装Apache2 Ubuntu需要安装Ap ...

  2. Centos6.5下使用LAMP搭建discuz论坛(编译安装 PS :自学中 写的不好请见谅)

    wget http://mirror.bit.edu.cn/apache/httpd/httpd-2.2.27.tar.gz  下载Apache软件包 wget http://downloads.my ...

  3. 买错的电影票,含着泪也得看-LAMP搭建&Linux基础

    hi 没说过,上周五室友过生请客,在龙湖里吃嗨了喝爽了,回去的路上侃侃而谈.说好的这周一起去看年内最后的大片,火星救援的,谁知道老子眼神不好,买错了电影的时间...把周六的约定提前到了今儿个下午,ma ...

  4. linux下搭建lamp环境以及安装swoole扩展

    linux下搭建lamp环境以及安装swoole扩展   一.CentOS 6.5使用yum快速搭建LAMP环境 准备工作:先更新一下yum源  我安装的环境是:apache2.2.15+mysql5 ...

  5. Linux 搭建Discuz论坛

    title: Linux 搭建Discuz论坛 Welcome to Fofade's Blog! 这里是Linux 搭建论坛的一些命令记录 命令摘记: 下载文件:Discuz 安装环境:PHP Ap ...

  6. 基于Centos搭建 Discuz 论坛

    系统要求:CentOS 6.8 64 位操作系统 搭建 Discuz 论坛 准备 LAMP 环境 LAMP 是 Linux.Apache.MySQL 和 PHP 的缩写,是 Discuz 论坛系统依赖 ...

  7. LAMP-五分钟搭建个人论坛

    LAMP-五分钟搭建个人论坛 系统版本:CentOS7 1.##安装lamp及依赖软件wget http://repo.mysql.com/mysql-community-release-el7-5. ...

  8. (原创)LAMP搭建之一:图解如何安装并检查LAMP

    LAMP搭建之一:图解如何安装并检查LAMP 第一步:安装Linux(RedHat5) 第二步:rpm -qa httpd(查看apache是否安装) rpm -qa php(查看php是否安装) r ...

  9. LAMP 搭建wordpress部署教程贴.

    LAMP 搭建wordpress部署教程贴.这是一篇主要将LAMP,并且通过wordpress来进行验证,演示.如何去部署PHP CMS很多新手看到LAMP就很很头大,觉得很难搞,编译安装,搞了好几天 ...

随机推荐

  1. Eclipse配置多个jdk

    Eclipse配置多个jdk 步骤: 1,打开windows > Preferences: 2,点击“Add”,新增jdk,选择“Standard VM”: 3,下一步,选择对应版本的jer: ...

  2. asp.net发送短信

    public class SmsServiceManager { public static string Send(string PhoneNumber, out string sendNo) { ...

  3. 关于MVC 上传文件

    前台代码如下 @{ Layout = null; } <!DOCTYPE html> <html> <head> <title>Index</ti ...

  4. 如何安装python .whl包

    1.最简单的办法是是python -mpip install *** 配置过环境变量也可以 pip install *** 但是由于墙的原因,很大概率失败.可以找到对应网站下载对应的.whl 2.下载 ...

  5. openwrt下定义软件包的依赖关系类型

    在openwrt下软件包的依赖关系由DEPENDS:=来指定 第一种依赖关系类型为只有将依赖的软件包手动选上,当前的软件包就会自动被选中,用法为DEPENDS:=package_name 第二种依赖关 ...

  6. 利用shell编程,部署项目到服务器

    现在在前后端分离的开发形式中,每次前端将VUE项目打包之后,需要后端程序员部署到服务器上.这过程为何没有用git,因为每次vue打包后的文件都不相同与前一次打包,git为何的话,会包含过大迭代版本,同 ...

  7. Hadoop 常用指令

    1. 察看hdfs文件系统运行情况 bin/hdfs dfsadmin -report 2. 为了方便执行 HDFS 的操作指令,我们可以将需要的 Hadoop 路径写入环境变量中,便于直接执行命令. ...

  8. 【转】jQuery的attr与prop

    原文:<jQuery的attr与prop> jQuery1.6中新添加了一个prop方法,看起来和用起来都和attr方法一样,这两个方法有什么区别呢?这要从HTMl 的attribute与 ...

  9. AtCoder Grand Round 012B Splatter Painting

    本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/ ...

  10. centos7 systemctl一些用法

    systemctl 是管制服务的主要工具, 它整合了chkconfig 与 service功能于一体. systemctl is-enabled servicename.service #查询服务是否 ...