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. centos7 安装 gitolite (git服务器)

    gitolite简介 轻量级git服务器程序,解决了git权限管理的问题.(git是一个分布式版本控制系统,就是说每个人作为客户端的同时又是服务器)项目GitHub地址:https://github. ...

  2. Python3.x:SQLAlchemy操作数据库

    Python3.x:SQLAlchemy操作数据库 前言 SQLAlchemy是一个ORM框架(Object Rational Mapping,对象关系映射),它可以帮助我们更加优雅.更加高效的实现数 ...

  3. Linux读书笔记1/2章

    linux的内核设计: 第一章 1.1Linux历史: 历经时间的考验,今天Unix已经发展成一个支持抢占式多任务.多线程.虚拟内存.换页.动态链接.TCP/Ip网络的现代化操作系统. 1.2追寻Li ...

  4. terminal配置

    阅读目录 前言 使用 tmux 复用控制台窗口 在命令行中快速移动光标 在命令行中快速删除文本 快速查看和搜索历史命令 快速引用和修饰历史命令 录制屏幕并转换为 gif 动画图片 总结 回到顶部 前言 ...

  5. CentOS7系统安装配置samba服务

    # 查询是否已经安装了Samba rpm -qi samba # 安装 yum -y install samba samba-client samba-common # 添加新用户 useradd s ...

  6. 斜率优化dp学习

    用了一堂半的课才彻底搞懂.其他神犇写的博客或多或少有点小bug,所以orzzz不才斗胆重新写一个. 里面大量穿用其他神犇的原话,就不逐一标明出处了. 引用资料 Accept的博客 MathonL的博客 ...

  7. LeetCode——Sort List

    Question Sort a linked list in O(n log n) time using constant space complexity. Solution 分析,时间复杂度要求为 ...

  8. CentOs64位编译安装hadoop-2.6.0

    官方提供的hadoop-2.x版本貌似都是32位的,在64位机子下使用可能会报错,最好使用官方提供的源码进行本地编译,编译成适合本地硬件环境的64位软件包. Hadoop是使用Java语言开发的,但是 ...

  9. C#之多线程

    多线程在C#中使用得非常频繁,线程之间的充分利用显得尤为重要,一般的写法都是得不到充分利用资源,本人针对多线程写了一种方法,可以充分利用资源,保证每次同时启动10条线程,现在执行完马上再启动一条,总之 ...

  10. synchornized实现原理

    synchronized是基于Monitor来实现同步的. Monitor 的工作机理: 线程进入同步方法中. 为了继续执行临界区代码,线程必须获取 Monitor 锁.如果获取锁成功,将成为该监视者 ...