图文详解阿里云下lamp+discuz搭建实例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图文详解阿里云下lamp+discuz搭建实例相关的知识,希望对你有一定的参考价值。


lamp(Web应用软件)


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


Linux

Linux 是免费开源软件,这意味着源代码可用的操作系统。

Apache

Apache 是使用中最受欢迎的一个开放源码WEB服务器软件。

MySQL

MySQL 是多线程、多用户的SQL数据库管理系统

MySQL 已由Oracle公司自 2010 年 1 月 27 日通过SUN购买。SUN 最初于 2008 年 2 月 26 日收购 MySQL。

PHP,Perl 或 Python

PHP 是一种编程语言最初设计生产动态网站。PHP 是主要用于服务器端的应用程序软件。Perl 和 Python 类似。





环境:centos 6.5   32位

          阿里云主机  

          mysql:5.1版本

      Apache:2.2版本

      php:5.4.45版本

           

      安装:1.mysql的安装

                2.mysql的安装

                3.php的安装

                4.GD库的安装

                5.搭建discuz论坛


mysql安装




1.进入到cd /usr/local/src/目录下



2.用wget http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.73-linux-i686-glibc23.tar.gz 下载安装包


3.解压安装 tar zxvf mysql-5.1.73-linux-i686-glibc23.tar.gz



4.创建mysql的账户

useradd -s /sbin/nologin -M mysql

-s:shell 

-M:不建立使用者目录



5.把解压后的文件移到并重命名/usr/local/mysql目录下

mv mysql-5.1.73-linux-i686-glibc23 /usr/local/mysql


6.进入到/usr/local/mysql下


cd /usr/local/mysql



7.创建一个存放数据库的文件夹并更改用户权限


mkdir -p /data/mysql


chown -R mysql /data/mysql



8.初始化数据库

进入数据库的目录


--user 创建的用户

--datadir 存放数据库的路径


cd /usr/local/mysql

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql


技术分享

技术分享


注:如何查看初始化有没有完成,只要出现2个ok就表示成功了

或者echo $?结果为0即表示成功



9.把不同的文件放到不同的目录下,先进入配置文件里

cd support-files/



10.拷贝my-large.cnf文件到/etc/my.cnf下


cp my-large.cnf /etc/my.cnf 按y



vi /etc/my.cnf 可以查看端口信息




11.拷贝mysql.server文件到/etc/init.d/mysqld目录下

cp mysql.server /etc/init.d/mysqld


 chmod 755 /etc/init.d/mysqld


vim !$可以打开刚拷贝的文件

修改basedir=/usr/local/mysql   ---mysql所在的位置

       datedir=/data/mysql  ----数据库所在的位置



12.把mysqld加入到系统启动中

chkconfig --add mysqld

把mysqld打开

chkconfig mysqld on

启动mysqld

/etc/init.d/mysqld start



13.查看mysqld的启动状态

ps aux |grep mysqld



查看port

netstat -lnpe |grep mysqld


技术分享





apache安装




1.进入到/usr/local/src文件下


cd /usr/local/src



2.下载apache安装包


wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.2.31.tar.gz


技术分享

技术分享

技术分享


3.解压Apache压缩包


tar zxvf httpd-2.2.31.tar.gz


4.进入Apache目录


cd httpd-2.2.31

技术分享


5.配置apache参数


如果不知道如何编译先查看


vim install


技术分享

技术分享


安装依赖包


yum install -y pcre pcre-devel apr apr-devel zlib-devel  gcc openssl-devel openssl  gcc-c++ 


编译安装


./configure --prefix=/usr/local/apache2 --with-included-apr --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --with-pcre


技术分享

技术分享


prefix=/usr/local/apache2 \  #----指安装路径


with-included-apr \ #---Apache依赖的包,可以跨平台使用





6.make 

 make install 继续安装

用echo $?检查有没有错误输出为0即正确


技术分享技术分享


7.启动apache


/usr/local/apache2/bin/apachectl start


出现以下错误的解决办法


技术分享技术分享



打开 配置文件


vi /usr/local/apache2/conf/httpd.conf


添加一行

ServerName localhost:80


技术分享技术分享





检测apache是否开启

ps aux |grep httpd


技术分享


查看hhtpd端口


netstat -lnpe 


技术分享技术分享



8.常用选项

-M:把模块列出来 (绿色的为动态模块,shared表示共享的,static静态)


/usr/local/apache2/bin/apachectl -M


技术分享技术分享


-l:把静态的模块给列出来


/usr/local/apache2/bin/apachectl -l


技术分享技术分享


-t:查看配置文件有没有语法错误


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


技术分享技术分享


重启

/usr/local/apache2/bin/apachectl  restart


stop:关闭


/usr/local/apache2/bin/apachectl  stop


graceful:重加载


/usr/local/apache2/bin/apachectl  graceful


工作模式:./configure --help |less

/--with-mpm可以指定工作模式







Php安装





1.先进入/usr/local/src目录


cd /usr/local/src


2.下载php文件包


wget http://cn2.php.net/get/php-5.4.45.tar.bz2/from/this/mirror


技术分享技术分享



3.解压mirror文件


tar jxf mirror


4.进入php-5.4.45下


cd php-5.4.45


技术分享技术分享


5.安装php环境


安装依赖包 yum    install -y libxml2* bzip2-devel bzip2 libjpeg-devel libpng libpng-devel freetype-devel


技术分享技术分享



6.编译安装


./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-mysqli --with-gd   --with-jpeg-dir   --with-png-dir   --with-freetype-dir   --with-iconv-dir   --with-zlib-dir   --with-bz2   --with-openssl   --with-mcrypt=/usr/local/libmcrypt   --enable-soap   --enable-gd-native-ttf   --enable-mbstring   --enable-sockets   --enable-exif   --disable-ipv6 


技术分享技术分享





注: configure: error: mcrypt.h not found. Please reinstall libmcrypt

解决方法:

rpm -ivh ‘http://www.lishiming.net/data/attachment/forum/epel-release-6-8_32.noarch.rpm‘ 如果无法解压http需手动输入



查看 yum list |grep -i mcrypt


安装 yum install -y libmcrypt-devel


重新安装php环境  


./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-mysqli --with-gd   --with-jpeg-dir   --with-png-dir   --with-freetype-dir   --with-iconv-dir   --with-zlib-dir   --with-bz2   --with-openssl   --with-mcrypt=/usr/local/libmcrypt   --enable-soap   --enable-gd-native-ttf   --enable-mbstring   --enable-sockets   --enable-exif   --disable-ipv6


技术分享


6.make安装php

出现 Don‘t forget to run ‘make test‘用echo $?验证


技术分享技术分享


7.make install安装


技术分享技术分享


ls /usr/local/php/查看有几个文件


bin etc include lib php


技术分享技术分享


安装顺序:先安装mysql 再安装Apache 最后安装php




GD库的安装





安装用到的源码:gd-2.1.0.    freetype-2.1.10   libpng-1.2.8  jpegsrc.v9a zlib-1.28


进入 cd /usr/local/src 目录 把源码下载到此目录下


wget https://bitbucket.org/libgd/gd-libgd/downloads/libgd-2.1.0.tar.gz GD库安装包

wget http://zlib.net/zlib-1.2.8.tar.gz

wget http://nchc.dl.sourceforge.net/sourceforge/libpng/libpng-1.2.8-config.tar.gz libpng(gd库需要)

wget http://prdownloads.sourceforge.net/freetype/freetype-2.1.10.tar.gz?download  freetype(gd库需要)

wget http://www.ijg.org/files/jpegsrc.v9a.tar.gz  jpegsrc(gd库需要)





安装zlib


1.解压文件


tar  -zxvf zlib-1.2.8.tar.gz


2.进入目录


cd zlib-1.2.8



3.执行编译安装


./configure 


技术分享技术分享


4.make 


make install


技术分享技术分享






安裝 freetype


cd ../进入下载文件的目录


1.解压文件


tar -zxvf tar -zxvf freetype-2.1.10.tar.gz\?download


2.进入目录


cd freetype-2.1.10



3.执行编译安装


./configure  --prefix=/usr/local/freetype


技术分享技术分享


4.make


make install


技术分享技术分享








安装  libpng


cd ../进入下载文件的目录


1.解压文件


tar -zxvf libpng-1.2.8-config.tar.gz


2.进入目录


cd libpng-1.2.8-config



3.执行编译安装


./configure 


技术分享


4.make


make install


技术分享技术分享





安装   jpegsrc


cd ../进入下载文件的目录


1.解压文件


tar -zxvf jpegsrc.v9a.tar.gz


2.进入目录


cd cd jpeg-9a


3.执行编译安装


./configure -prefix=/usr/local/jpeg --enable-shared --enable-static


技术分享技术分享


4.make


make install


技术分享技术分享








安装   gd库


cd ../进入下载文件的目录


1.解压文件


tar -zxvf libgd-2.1.0.tar.gz


2.进入目录


cd libgd-2.1.0


3.执行编译安装


./configure -prefix=/usr/local/gd -with-jpeg=/usr/local/jpeg -with-png -with-zlib -with-freetype=/usr/local/freetype


技术分享


4.make


技术分享

make install


技术分享技术分享




5.返回上一层,进入php目录重新编译安装



cd ../


cd php-5.4.45/


重新安装php环境  


./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-mysqli  --with-gd  --with-jpeg-dir=/usr/local/jpeg  --with-png-dir   --with-freetype-dir=/usr/local/freetype  --with-iconv-dir   --with-zlib-dir   --with-bz2   --with-openssl   --with-mcrypt=/usr/local/libmcrypt   --enable-soap   --enable-gd-native-ttf   --enable-mbstring   --enable-sockets   --enable-exif   --disable-ipv6 


技术分享技术分享


6.make


make install


技术分享技术分享



/usr/local/php/bin/php -m 查看是否安装了gd库


技术分享技术分享



7.在浏览器里输入ip/1.php显示不出结果怎么办


打开配置文件 vim /usr/local/apache2/conf/httpd.conf


 在AddType application/x-gzip .gz .tgz 下面增加一行


    AddType application/x-httpd-php .php


技术分享技术分享


/输入index.html  后面添加一个index.php


技术分享技术分享


修改好后重启Apache

/usr/local/apache2/bin/apachectl restart


技术分享



安装discuz






1.新建一个存放网站路径的文件夹


mkdir /data/www


2.进入www盘然后下载安装文件


cd /data/www


下载版本为gbk版本


wget http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_GBK.zip


3.解压zip文件


unzip Discuz_X3.2_SC_GBK.zip


3.把upload下的所有文件移到根目录下


mv upload/* ./


技术分享技术分享



4.把多余的文件给删除


rm -rf readme/ utility/  upload/ Discuz_X3.2_SC_GBK.zip 


技术分享技术分享



5.配置主配置文件


vi /usr/local/apache2/conf/httpd.conf


打开一个配置,搜索vhost,把这个配置给开启,保存退出


技术分享技术分享



继续编辑虚拟主机配置文件,把第二个配置文件给删除,修改第一个配置文件内容


vi /usr/local/apache2/conf/extra/httpd-vhosts.conf


技术分享

技术分享


vi /usr/local/apache2/conf/httpd.conf修改


技术分享


6.配置完成后检查是否有错误


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


出现以下错误解决办法


打开vi /usr/local/apache2/conf/httpd.conf 配置文件 把servername这行开启即可


7.访问前先配置hosts


在windows下hosts下面配置 自己的域名


C:\Windows\System32\drivers\etc


技术分享

技术分享



在浏览器输入www.audient925.com出现错误怎么办


技术分享

8.打开主配置文件,修改参数


vi /usr/local/apache2/conf/httpd.conf


技术分享技术分享技术分享



修改完后检查下是否有错误


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


技术分享

把服务重新启动


/usr/local/apache2/bin/apachectl restart


技术分享

9.刷新浏览器,发现出现安装界面


技术分享

技术分享



点同意发现有很多选项打X,不可写,如何解决


技术分享

技术分享



查看httpd是由哪个用户在运行,发现是daemon用户运行的


ps aux |grep http


技术分享



把config(配置文件的属组修改成daemon组即可)


chown -R daemon config uc_client/data uc_server/data data


技术分享

技术分享



刷新页面,页面都变成可写,点下一步,点全新安装,出现关于mysql的页面


技术分享技术分享



配置mysql相关的文件



如何想要直接使用mysql,需要写一个变量


vi /etc/profile.d/path.sh  


输入

#!/bin/bash

export PATH=$PATH:/usr/local/mysql/bin

 

  技术分享     

   技术分享



source !$


技术分享

技术分享


2.输入mysql,可以正常进入


create database discuz;


技术分享


3.创建用户和密码


grant all on discuz.* to ‘lizheng‘@‘localhost‘ identified by ‘lizheng123‘;


技术分享


网页上操作


技术分享


4.输入信息


管理员 密码xxxx


mysql:错误


1.出现以下错误的解决办法


技术分享技术分享


刷新数据库后重新创建用户和密码


flush privileges;


grant all on discuz.* to ‘lizheng‘@‘localhost‘ identified by ‘lizheng123‘;


技术分享技术分享




2.输入mysql,出现下面的错误解决方法


技术分享技术分享


打开 配置文件


vi /etc/my.cnf


找到mysql文件添加一行


skip-grant-tables


技术分享技术分享



3.重新启动mysql


 /etc/rc.d/init.d/mysqld restart






域名解析


登录阿里云


打开申请的域名点解析,添加几个记录


技术分享

技术分享


出现以下错误,是yum在自动更新,解决办法


直接输入  rm -f    /var/run/yum.pid


技术分享技术分享


以上是关于图文详解阿里云下lamp+discuz搭建实例的主要内容,如果未能解决你的问题,请参考以下文章

lamp +discuz+wordpress+phpmyadmin实例安装详解

LAMP 之四 Discuz 论坛搭建(实例)

利用LAMP搭建论坛(图文详解,保姆级教程)

LAMP架构搭建以及基于LAMP架构的主流论坛和博客搭建过程详解

阿里云ECS服务器搭建云上博客WordPress教程(手把手教你图文版)

LAMP搭建5:安装discuz