zoukankan      html  css  js  c++  java
  • Linux:LAMP搭建DISCU!论坛

    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.73-linux-i686-icc-glibc23.tar.gz //解压
     mv mysql-5.1.73-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 755 /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.24.tar.bz2


    配置编译参数

    cd httpd-2.2.24
    ./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.44.tar.gz


    配置编译参数
     

    cd php-5.4.44
     ./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:80
    修改为:
    ServerName localhost:80



    查看配置文件是否有问题

     /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/1.php
    写入:
    <?php
    echo "php works.";
    ?>
    保存后,继续测试:
     curl localhost/1.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 *:80>
      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 '123456';
    > 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 定义的。

  • 相关阅读:
    博客园
    未释放的已删除文件
    ssh连接缓慢
    剑指 Offer 38. 字符串的排列
    剑指 Offer 37. 序列化二叉树
    剑指 Offer 50. 第一个只出现一次的字符
    剑指 Offer 36. 二叉搜索树与双向链表
    剑指 Offer 35. 复杂链表的复制
    剑指 Offer 34. 二叉树中和为某一值的路径
    剑指 Offer 33. 二叉搜索树的后序遍历序列
  • 原文地址:https://www.cnblogs.com/Spiro-K/p/6407138.html
Copyright © 2011-2022 走看看