Linux+Apache+Mysql+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。
需要的软件:
把这些软件放到linux上,不管你用什么方法,VSFTPD也好.Samba也好
首选,linux要安装:gcc gcc-c++ 安装命令:yum -y install gcc gcc-c++
为什么我在linux执行:yum -y install gcc gcc-c++ 会显示
这里需要配置YUM本地源.这里我就不多讲了,我以前教程有.下载地址:
本地YUM源配置.zip
安装了好gcc这后.先删除你linux系统中已有的httpd、mysql、php等.
好了.较低的版本删完后就开始源代码安装.
1.先安装
[root@mx7krshell src]# tar -zxvf libxml2-2.6.30.tar.gz
[root@mx7krshell src]# cd libxml2-2.6.30
[root@mx7krshell libxml2-2.6.30]# mkdir /usr/local/libxml2
[root@mx7krshell libxml2-2.6.30]# ./configure --prefix=/usr/local/libxml2/
[root@mx7krshell libxml2-2.6.30]#make
[root@mx7krshell libxml2-2.6.30]#make install
或者
[root@mx7krshell libxml2-2.6.30]#make && make install /*都是可以的
正在编译中:
如果安装成功的话,会在/usr/local/libxml2/目标下会生成五个目录.
说明是安装成功的.
- 接下来安装
[root@mx7krshell src]# tar -zxvf libmcrypt-2.5.8.tar.gz
[root@mx7krshell src]# cd libmcrypt-2.5.8
[root@mx7krshell libmcrypt-2.5.8]# mkdir /usr/local/libmcrypt
[root@mx7krshell libmcrypt-2.5.8]# ./configure --prefix=/usr/local/libmcrypt/
[root@mx7krshell libxml2-2.6.30]#make
[root@mx7krshell libxml2-2.6.30]#make install
或者
[root@mx7krshell libxml2-2.6.30]#make && make install /*都是可以的
如果安装成功./usr/local/libmcrypt/会生成五个目录
安装成功后:
[root@mx7krshell libmcrypt-2.5.8]# cd libltdl/
[root@mx7krshell libltdl]# ./configure --enable-ltdl-install
[root@mx7krshell libltdl]# make
[root@mx7krshell libltdl]# make install
- 安装:zlib-1.2.3.tar.gz
[root@mx7krshell src]# tar -zxvf zlib-1.2.3.tar.gz
[root@mx7krshell zlib-1.2.3]# mkdir /usr/local/zlib
[root@mx7krshell zlib-1.2.3]# ./configure --prefix=/usr/local/zlib/
[root@mx7krshell libxml2-2.6.30]#make
[root@mx7krshell libxml2-2.6.30]#make install
或者
[root@mx7krshell libxml2-2.6.30]#make && make install /*都是可以的
- 安装:libpng-1.2.31.tar.gz
[root@mx7krshell src]# tar -zxvf libpng-1.2.31.tar.gz
[root@mx7krshell src]# cd libpng-1.2.31
[root@mx7krshell libpng-1.2.31]# mkdir /usr/local/libpng
[root@mx7krshell libpng-1.2.31]# ./configure --prefix=/usr/local/libpng/
这时,会出现如下状况:
解决方案:
- 进入zlib的源文件目录,执行命令 make clean,清除zlib;
[root@mx7krshell libpng-1.2.31]# cd ..
[root@mx7krshell src]# cd zlib-1.2.3
[root@mx7krshell zlib-1.2.3]# make clean
2.重新配置 ./configure,后面不要接--prefix参数;
- 编辑 && 安装;
[root@mx7krshell zlib-1.2.3]# make && make install
4.进入libpng目录,执行命令 ./configure --prefix=/usr/local/libpng;
[root@mx7krshell zlib-1.2.3]# cd ..
[root@mx7krshell src]# cd libpng-1.2.31
[root@mx7krshell libpng-1.2.31]# ./configure --prefix=/usr/local/libpng/
- 编译 && 安装;
[root@mx7krshell zlib-1.2.3]# make && make install
好了.这样一个问题就解决了.
- 安装:jpegsrc.v6b.tar.gz
[root@mx7krshell src]# mkdir /usr/local/jpeg6
[root@mx7krshell src]# mkdir /usr/local/jpeg6/bin
[root@mx7krshell src]# mkdir /usr/local/jpeg6/lib
[root@mx7krshell src]# mkdir /usr/local/jpeg6/include
[root@mx7krshell src]# mkdir -p /usr/local/jpeg6/man/man1
[root@mx7krshell src]# tar -zxvf jpegsrc.v6b.tar.gz
[root@mx7krshell src]# cd jpeg-6b/
[root@mx7krshell jpeg-6b]# ./configure \
> --prefix=/usr/local/jpeg6/ \
> --enable-shared \
> --enable-static
[root@mx7krshell jpeg-6b]# make && make install
- 安装:freetype-2.3.5.tar.gz
[root@mx7krshell src]# tar -zxvf freetype-2.3.5.tar.gz
[root@mx7krshell src]# cd freetype-2.3.5
[root@mx7krshell freetype-2.3.5]# mkdir /usr/local/freetype
[root@mx7krshell freetype-2.3.5]# ./configure --prefix=/usr/local/freetype/
[root@mx7krshell freetype-2.3.5]# make && make install
[root@mx7krshell freetype-2.3.5]#make clean
[root@mx7krshell freetype-2.3.5]#make && make install
7.安装:autoconf-2.61.tar.gz
[root@mx7krshell src]# tar -zxvf autoconf-2.61.tar.gz
[root@mx7krshell autoconf-2.61]# cd autoconf-2.61
[root@mx7krshell autoconf-2.61]# ./configure
[root@mx7krshell autoconf-2.61]# make
[root@mx7krshell autoconf-2.61]# make install
- 安装:gd-2.0.35.tar.gz
[root@mx7krshell src]# tar -zxvf gd-2.0.35.tar.gz
[root@mx7krshell src]# cd gd-2.0.35
[root@mx7krshell gd-2.0.35]# mkdir /usr/local/gd2
[root@mx7krshell gd-2.0.35]# ./configure \
> --prefix=/usr/local/gd2/ \
> --with-zlib=/usr/local/zlib/ \
> --with-jpeg=/usr/local/jpeg6/ \
> --with-png=/usr/local/libpng/ \
> --with-freetype=/usr/local/freetype/
[root@mx7krshell gd-2.0.35]#make
这时,又出现错误了:
解决方案:
[root@mx7krshell gd-2.0.35]# vim gd_png.c
找到png.h 改为:
[root@mx7krshell gd-2.0.35]#make
[root@mx7krshell gd-2.0.35]#make install
问题解决了:
- 安装:Apache服务器
[root@mx7krshell src]# tar -zxvf httpd-2.2.9.tar.gz
[root@mx7krshell src]# cd httpd-2.2.9
[root@mx7krshell httpd-2.2.9]# mkdir /usr/local/apache2
[root@mx7krshell httpd-2.2.9]# ./configure \
> --prefix=/usr/local/apache2/ \
> --sysconfdir=/etc/httpd \
> --with-z=/usr/local/zlib/ \
> --with-included-apr \
> --disable-userdir \
> --enable-so \
> --enable-defate=shared \
> --enable-expires=shared \
> --enable-rewrite=shared \
> --enable-static-support
[root@mx7krshell httpd-2.2.9]# make
[root@mx7krshell httpd-2.2.9]# make install
[root@mx7krshell httpd-2.2.9]# /usr/local/apache2/bin/apachectl start /*开启服务
如果有显示80,说明Apahce安装成功:
用linux的浏览来看看:
- 安装MySQL数据库
首先要为mysql增加一个登陆用户和用户组
[root@mx7krshell src]# groupadd mysql
[root@mx7krshell src]# useradd -g mysql mysql
[root@mx7krshell src]# tar -zxvf mysql-5.0.41.tar.gz
[root@mx7krshell src]# cd mysql-5.0.41
[root@mx7krshell mysql-5.0.41]# mkdir /usr/local/mysql
[root@mx7krshell mysql-5.0.41]# ./configure \
> --prefix=/usr/local/mysql/ \
> --with-extra-charsets=all
[root@mx7krshell mysql-5.0.41]# make
这时,又出错了..
解决方案:
1.安装ncurses-5.6.tar.gz
[root@mx7krshell mysql-5.0.41]# cd ..
[root@mx7krshell src]# tar -zxvf ncurses-5.6.tar.gz
[root@mx7krshell src]# cd ncurses-5.6
[root@mx7krshell ncurses-5.6]# ./configure -prefix=/usr/local -with-shared -without-debug
[root@mx7krshell ncurses-5.6]# make && make install
再回到MySQL
[root@mx7krshell ncurses-5.6]# cd ..
[root@mx7krshell src]# cd mysql-5.0.41
[root@mx7krshell mysql-5.0.41]# ./configure \
> --prefix=/usr/local/mysql/ \
> --with-extra-charsets=all
[root@mx7krshell ncurses-5.6]# make && make install
是不是成功的呢?哈哈..
编译好后.
[root@mx7krshell mysql-5.0.41]# cp support-files/my-medium.cnf /etc/my.cnf
[root@mx7krshell mysql-5.0.41]# cd /usr/local/mysql/
[root@mx7krshell mysql]# bin/mysql_install_db --user=mysql /*如果系统还没有安装过mysql,必须创建MySQL授权表.
目标设置权限:
[root@mx7krshell mysql]# chown -R root .
[root@mx7krshell mysql]# chown -R mysql var
[root@mx7krshell mysql]# chgrp -R mysql .
[root@mx7krshell mysql]# /usr/local/mysql/bin/mysqld_safe --user=mysql &
这条命令来开启mysql服务的.
我们来查看一下端口,如果有 3306.说明MySQL安装成功:
连接MySQL服务器:
[root@mx7krshell mysql]# bin/mysql -u root
默认是空密码的,现在改密码:
密码为:mx7krshell
- 安装PHP模块
[root@mx7krshell src]# tar -zxvf php-5.2.6.tar.gz
[root@mx7krshell src]# cd php-5.2.6
[root@mx7krshell php-5.2.6]# mkdir /usr/local/php
[root@wnt-linux php-5.2.6]# ./configure \
--prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysql=/usr/local/mysql/ \
--with-libxml-dir=/usr/local/libxml2/ \
--with-png-dir=/usr/local/libpng/ \
--with-jpeg-dir=/usr/local/jpeg6/ \
--with-freetype-dir=/usr/local/freetype \
--with-gd=/usr/local/gd2/ \
--with-zlib-dir=/usr/local/zlib/ \
--with-mcrypt=/usr/local/libmcrypt/ \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
--enable-soap \
--enable-mbstring=all \
--enable-sockets
[root@mx7krshell php-5.2.6]# make
此时,又是一个错误..好..
解决方案:
[root@mx7krshell php-5.2.6]# vim /etc/ld.so.conf
把这个路径加入到/usr/local/lib /etc/ld.so.conf里面去
然后用ldconfig命令加载
[root@mx7krshell php-5.2.6]# ldconfig
[root@mx7krshell php-5.2.6]# make
[root@mx7krshell php-5.2.6]# make install
如果还不行?
Libmcrypt重新安装:
[root@mx7krshell src]# tar -zxvf libmcrypt-2.5.8.tar.gz
[root@mx7krshell src]# cd libmcrypt-2.5.8
[root@mx7krshell libmcrypt-2.5.8]# mkdir /usr/local/libmcrypt
[root@mx7krshell libmcrypt-2.5.8]# ./configure --prefix=/usr/local/libmcrypt/
[root@mx7krshell libxml2-2.6.30]#make
[root@mx7krshell libxml2-2.6.30]#make install
好,我这里 PHP是成功编译的
这里我搞了2个小时了,最后你知道我是那里错了吧? 是目录的名字不对.所以我们要细心..
[root@mx7krshell php-5.2.6]# cp php.ini-dist /usr/local/php/etc/php.ini
[root@mx7krshell php-5.2.6]# vim /etc/httpd/httpd.conf
添加:AddType application/x-httpd-php .php .phtml
[root@mx7krshell src]# /usr/local/apache2/bin/apachectl stop
先将服务停止.再重开
[root@mx7krshell src]# /usr/local/apache2/bin/apachectl start
我在/usr/local/apache2/htdocs写个index.php文件
我用windows2003来测试和linux来测试下
在vim /etc/httpd/httpd.conf 里面要把index.php添加进去
Linux:
Windows2003测试:
用运行index.php。说明是LAMP配置成功的
你以为完了吗?
不.还有.
- 安装phpMyAdmin
[root@mx7krshell src]# tar -zxvf phpMyAdmin-3.0.0-rc1-all-languages.tar.gz
[root@mx7krshell src]# cp -a phpMyAdmin-3.0.0-rc1-all-languages \
> /usr/local/apache2/htdocs/phpmyadmin
[root@mx7krshell src]# cd /usr/local/apache2/htdocs/phpmyadmin/
[root@mx7krshell phpmyadmin]# cp config.sample.inc.php config.inc.php
[root@mx7krshell phpmyadmin]# vim configinc.php
现在我设置HTTP身份验证模式:cookie改为http
现在用win2003看下:
你以为这些就完了吗? 还有很多没写- -,该睡觉了.. 各位,早安