1. 论坛系统升级为Xenforo,欢迎大家测试!
    排除公告

Linux下APACHE+PHP+MYSQL+CGI…………修改版

本帖由 小叶2006-03-02 发布。版面名称:主机讨论

  1. 小叶

    小叶 New Member

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    33
    http://www.linuxsir.org/bbs/showthread.php?s=&threadid=2085

    根据一个自称自己经验所得的混蛋文章改的
    许多文章结合起来,嘿嘿
    MOD_PERL,FASTCGI那一栏我没有调试,因为不喜欢CGI。CHMOD MYSQL那一栏两次都是卡住过,如果有问题,可以来回做做实验。

    Linux下apache+mysql+php^^^^^^^^(修改版)

    唉,网上如此多的文章,版本居然这么多,并且多多少少存在着一些毛病,解决毛病及错误用了自己一天的时间,修改些错误的地方,最后的版本就是下面的了


    apache1.3.24+php4.21+mysql3.23.49+openssl+mod_ssl+mod_perl+mod_fastcgi
    这里要注意的是apache 1.3x可以用静态php模块
    2.x.x目前还只可以用动态,并且没有windows版本

    本安装所需要的软件包:
    apache_1.3.24.tar.gz
    php-4.2.1.tar.gz
    mysql-3.23.49.tar.gz
    mod_fastcgi-2.2.12.tar.gz
    mod_perl-1.26.tar.gz
    mod_ssl-2.8.8-1.3.24.tar.gz
    openssl-0.9.6d.tar.gz

    虽然 apache 版本已到 2.0.36,但从其它资料看好像并未真正走出试验阶段,而且最新的 php 4.21 目前也无法编译为 apache 2.0.xx 的静态模块。而本安装采用的是编译为静态模块,因此没有采用新版 apache。

    ###################################################


    安装:

    将这些包放在一个目录下,如 /usr/local/src
    然后解压缩这些包:
    tar xzvf apche_1.3.24.tar.gz
    tar xzvf php-4.2.1.tar.gz
    tar xzvf mysql-3.23.49.tar.gz
    tar xzvf mod_fastcgi-2.2.12.tar.gz
    tar xzvf mod_perl-1.26.tar.gz
    tar xzvf mod_ssl-2.8.8.-1.3.24.tar.gz
    tar xzvf openssl-0.9.6d.tar.gz

    解压缩完成后将会看到在当前目录下已经出现了解压缩后生成的文件夹

    现在开始配置编译:

    1. 首先安装 MySQL
    需要PTH噢,别忘记
    1) 建立 MySQL 用户组:

    groupadd mysql
    useradd -g mysql mysql

    2) 配置并编译

    cd mysql-3.23.49
    ./config --prefix=/usr/local/mysql

    如果想使用 MySQL 事务的话,可以加上 --with-berkeley-db,即:

    ./configure \
    --prefix=/usr/local/mysql \
    --with-berkeley-db

    配置完成后就可以编译了

    3) 编译安装
    编译很简单,只有一个命令

    make

    然后安装

    make install

    4) 初始化
    安装结束后还没完,还有几个步骤,首先是初始化数据库

    scripts/mysql_install_db

    然后是设置权限

    chown -R root /usr/local/mysql
    chown -R mysql /usr/local/mysql/var
    chgrp -R mysql /usr/local/mysql

    然后将启动 MySQL 所需的 my.cnf 拷贝到 /etc 目录下

    cp /usr/local/mysql/share/mysql//my-medium.cnf /etc/my.cnf
    (其中还有三个文件,my-small.cnf、my-large.cnf和my-huge.cnf,
    是对于机器性能而言的,最后一个适用于2GB左右内存

    5) 启动

    /usr/local/mysql/bin/safe_mysqld --user=mysql &

    你可以看到启动信息,这时应该给 root 用户设置密码了,因为安装后默认是没有密码的

    6) 为 root 设置密码

    /usr/local/mysql/bin/mysqladmin -u root -p password your_new_password

    注意,第一个 password 是命令的参数,依原样键入,而 your_new_password 就是你要设置的新密码。例如,要将 root 密码设为123456,那么这样输入命令:

    /usr/local/mysql/bin/mysqladmin -u root -p password 123456

    回车后系统会提示你输入当前密码,应该是像下面这样:

    Enter password:

    因为此时还没有密码,所以直接回车即可,这时没有任何提示返回提示符状态,而密码已经设置完成。此时可以通过关闭 MySQL 服务验证密码是否生效:

    /usr/local/mysql/bin/mysqladmin -u root -p shutdown
    Enter password:123456

    系统提示 MySQL 已关闭:

    020531 13:14:35 mysql ended
    [1]+ Done /usr/local/mysql/bin/safe_mysqld --user=mysql

    ##########################################################################

    2. 安装 apache + php + 其它模块

    先来配置模块

    cd /usr/local/src

    1) 将 fastcgi 目录移至 apache 的模块目录下并更名为 fastcgi

    mv mod_fastcgi-2.2.12 apache_1.3.24/src/modules/fastcgi

    2) 配置并编译 openssl 模块

    cd /usr/local/src/openssl-0.9.6d
    sh config
    make
    make test

    3) 配置 mod_ssl

    cd /usr/local/src/mod_ssl-2.8.8-1.3.24
    ./configure --with-apache=../apache_1.3.24

    4) 配置编译并安装 mod_perl

    cd /usr/local/src/mod_perl-1.26
    perl Makefile.PL \
    APACHE_SRC=../apache_1.3.24/src \
    DO_HTTPD=1 \
    USE_APACI=1 \
    PRE_HTTPD=1 \
    EVERYTHING=1

    然后编译

    make

    接着测试编译结果

    make test

    安装

    make install

    5) 配置 apache

    cd /usr/local/src/apache_1.3.24
    SSL_BASE=../openssl-0.9.6d ./configure \
    --prefix=/usr/local/apache \
    --enable-module=ssl \
    --activate-module=src/modules/fastcgi/libfastcgi.a \
    --activate-module=src/modules/perl/libperl.a

    现在已初步完成了 apache 的配置,接下来开始搞定 php

    6) 配置编译安装 php-4.2.1

    cd /usr/local/src/php-4.2.1
    ./configure \
    --with-mysql=/usr/local/mysql \
    --with-apache=../apache_1.3.24 \
    --enable-track-vars \
    --enable-trans-sid \
    --with-gd

    然后编译

    make

    安装

    make install

    7) 重新配置并编译安装 apache

    cd /usr/local/src/apache_1.3.24
    ./config.status \
    --activate-module=src/modules/php4/libphp4.a

    编译

    make

    安装

    make certificate
    make install

    8) 最后设置

    cd /usr/local/src/php-4.2.1
    cp php.ini-dist /usr/local/lib/php.ini

    你可以按需要编辑 php.ini

    编辑 /usr/local/apache/conf 目录下的 httpd.conf

    找到:
    <IfModule mod_dir.c>
    DirectoryIndex index.html
    </IfModule>

    改为:
    <IfModule mod_dir.c>
    DirectoryIndex index.html index.php
    </IfModule>

    在文件中增加一条:
    AddType application/x-httpd-php .php

    设置结束。

    9) 调试

    这一块我就不用说了吧

    系统启动时加载mysql
    cp /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysql
    cd /etc/rc.d/rc3.d
    ln -s ../init.d/mysql S70mysql


    系统启动时加载apache
    cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd
    cd /etc/rc.d/rc3.d
    ln -s ../init.d/httpd S80httpd

    10)不妨再加上ZEND加速器,挺管用的
    最新的1。31版本,不管是WIN下的还是LINUX下的,根据提示一步步来就可以了
    LINUX下是 ./install.sh, 嘿嘿,简单吧
     
  2. a江

    a江 New Member

    注册:
    2006-02-05
    帖子:
    138
    赞:
    0
    zend ??
     
  3. alpha

    alpha New Member

    注册:
    2005-12-15
    帖子:
    683
    赞:
    0
  4. orochi

    orochi New Member

    注册:
    2006-02-26
    帖子:
    201
    赞:
    2