说明:
此贴内容,部分是根据网上的一篇教程改进,为完全原创,属于改进帖子,目前按照此方法安装很多次,对于大部分版本安装都没遇到问题。如果还有问题请发帖指出,本人一定改进。那么现在开始吧.
首先是软件:
Apache v2.0.54 官方主页: [url]http://www.apache.org[/url]
[url]http://www.apache.org/dist/httpd/httpd-2.0.54.tar.gz[/url] [7.16MB]
PHP v4.3.11 官方主页: [url]http://www.php.net[/url]
[url]http://cn.php.net/distributions/php-5.0.4.tar.gz[/url] [4.64MB]
Zend Optimizer v2.5.10 官方主页: [url]http://www.zend.com[/url]
[url]http://downloads.zend.com/optimizer/2.5.10/ZendOptimizer-2.5.10-linux-glibc21-i386.tar.gz[/url] [3.36MB]
MySQL v4.0.24 官方主页: [url]http://www.mysql.com[/url]
[url]http://ftp.stu.edu.tw/pub/Unix/Database/Mysql/Downloads/MySQL-4.0/mysql-4.0.24.tar.gz[/url] [16.1MB]
关于下载:下载的话使用 wget命令下载上面的地址即可。
开始安装:
1、解压缩,把所有源码压缩包放在一个目录中,解压缩所有 .tar.gz 压缩包
tar zxvf *.tar.gz
2、安装
先要确认你的 GCC安装没有问题.
rpm -qa | grep -i gcc
确认安装了,那么就可以开始编译安装了
##### MySQL #####
----此步可以跳过------
cd mysql-4.0.24
编辑 sql/mysqld.cc :
搜索:&max_connections, 0, GET_ULONG, REQUIRED_ARG, 100, 1, 16384, 0, 1,
修改:&max_connections, 0, GET_ULONG, REQUIRED_ARG, 1000, 1, 16384, 0, 1,
---------------------------------
groupadd mysql
useradd -g mysql mysql
(下步是输入编译参数,可以根据自己需要添加,"\"符号是突略的)
./configure \
--prefix=/server/mysql \
--sysconfdir=/server/mysql \
--without-isam \
--without-debug \
-with-charset=gb2312 \
--enable-assembler \
--with-unix-socket-path=/tmp/mysql.sock \
--with-mysqld-user=mysql \
--with-extra-charset=all \
--with-client-ldflags=-all-static \
--with-mysqld-ldflags=-all-static \
--localstatedir=/data/mysql/data
如果出现了以下错误:
checking for tgetent in -ltermcap... no
checking for termcap functions library... configure: error: No curses/termcap library found
说明 curses/termcap 库没有安装
apt-cache search curses | grep lib
安装 libncurses5-dev ,然后重新运行配置
mkdir /data
mkdir /data/mysql
mkdir /data/mysql/data
make
make install
/server/mysql/bin/mysql_install_db --user=mysql
chown -R mysql /data/mysql
chgrp -R mysql /data/mysql
chown -R root /server/mysql
chgrp -R mysql /server/mysql
cp /server/mysql/share/mysql/my-medium.cnf /server/mysql/my.cnf
/server/mysql/share/mysql/mysql.server start
/server/mysql/bin/mysqladmin -u root password 123456789
cd ..
##### Apache2 #####
cd httpd-2.0.54
(下步是输入编译参数,可以根据自己需要添加,"\"符号是突略的)
./configure --prefix=/server/httpd \
--enable-so \
--with-mysql=/server/mysqld \
--enable-cgi \
--with-config-file-path=/server/httpd/conf \
--enable-track-vars \
--enable-mods-shared=all \
--enable-cache \
--enable-disk-cache \
--enable-mem-cache \
--enable-rewrite \
--with-mpm=worker \
--enable-ssl
make
make install
cd ..
##### PHP #####
cd php-4.3.11
(下步是输入编译参数,可以根据自己需要添加,"\"符号是突略的)
./configure --prefix=/server/php \
--with-apxs2=/server/httpd/bin/apxs \
--with-gd=/usr/local/gd \
--enable-gd \
--enable-gd-native-ttf \
--with-jpeg-dir=/usr/local/jpeg \
--with-png \
--with-ttf \
--with-freetype-dir=/usr/local/freetype \
--enable-magic-quotes \
--with-mysql=/server/mysql \
--with-mysql-sock=/tmp/mysql.sock \
--with-iconv \
--with-mbstring \
--enable-mbstring \
--enable-track-vars \
--enable-force-cgi-redirect \
--with-config-file-path=/server/httpd/conf \
--with-cpdflib=/usr/local \
--with-pear=/server/php/pear
make
make install
cp php.ini-dist /server/httpd/conf/php.ini
cd ..
##### Zend Optimizer #####
cd ZendOptimizer-2.5.10-linux-glibc21-i386
./install
操作 [OK] [EXIT] [YES] [/server/zend] [/server/httpd/conf] [YES] [/server/httpd/bin/apachectl] [OK] [OK] [NO]
cd ..
##### .配置apache2 支持php #####
vi /server/httpd/conf/httpd.conf
增加:
LoadModule php5_module /usr/lib/libphp5.so
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
找到
DirectoryIndex index.html
在index.html后面增加 index.php
然后保存退出
现在,WEB 服务已经安装完毕!
启动 Apache2
/server/httpd/bin/apachectl start
如果出错请参考下一贴中的 httpd.conf 和 虚拟主机配置文件示例
MySQL 服务前面已经启动了,密码是:123456789
####加入自动启动###########
vi /etc/rc.d/rc.local
将下面加入,这样APACHE和MYSQL就会和系统一起启动了
/server/mysql/share/mysql/mysql.server start
/server/httpd/bin/apachectl start
虚拟主机配置.
vi /server/httpd/conf/httpd.conf
找到
#NameVirtualHost *:80
去掉#号
然后添加如下内容
<VirtualHost *:80>
ServerAdmin 你的信箱地址
DocumentRoot 位于文件位置
ServerName 域名
ErrorLog 出错保存的记录存放位置
CustomLog 同上不过是cunstom的记录 common