科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道Linux下Apache2+PHP+MySQL整合安装

Linux下Apache2+PHP+MySQL整合安装

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

粘帖我前段时间的操作,希望对某些人有些帮助,也请大家多多指教。

作者:Loviny 来源:网络 2007年10月4日

关键字: 整合 Linux Web服务器 Apache

  • 评论
  • 分享微博
  • 分享邮件
粘帖我前段时间的操作,希望对某些人有些帮助,也请大家多多指教。

运行环境:RedHat 7.3
使用软件:Apache2.0.40    http://www.apache.org/dist/httpd/httpd-2.0.40.tar.gz
     PHP4.3DEV      http://snaps.php.net/php4-latest.tar.gz
     MySQL3.23.52   http://mysql.hjc.edu.sg/Downloads/M...-3.23.52.tar.gz

1、安装apache2

  将httpd-2.0.40.tar.gz复制到/usr/local/src目录下
  # tar zxvf httpd-2.0.40.tar.gz
  # cd httpd-2.0.40
  # ./configure --prefix=/usr/local/apache --enable-mods=shared=all --enable-module=so --disable-info
  # make
  # make install
  # vi /usr/local/apache/conf/httpd.conf
  更改ServerName后保存退出

  接下来设置apache的自启动及运行等级
  # cd /etc/rc.d/init.d
  # sed 's/sbin\/atd/local\/apache\/bin\/httpd/g' atd > httpd
  # sed 's/atd/httpd/g' httpd > /tmp/txt
  # sed 's/at daemon/httpd daemon/g' /tmp/txt > httpd
  # rm -f /tmp/txt
  # chmod 755 httpd
  # chkconfig --level 345 httpd on
  # chkconfig --level 0126 httpd off

  启动与关闭httpd服务
  # /etc/rc.d/init.d/httpd start/stop/restart

2、安装MySQL

  笔者不赞成以root来启动MySQL,因此首先创建一个mysqluser的用户以用来启动MySQL,并不以在/etc/rc.d/中加入自启动而改以在rc.local中启动。
  将mysql-3.23.52.tar.gz复制到/usr/local/src目录中
  # tar zxvf mysql-3.23.52.tar.gz
  # groupadd mysql
  # useradd -g mysql mysql

  # ./configure --prefix=/usr/local/mysql --localstatedir=/home/data --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --with-mysqld-user=mysql --enable-assembler --with-extra-charsets=all

  在此配置中,笔者已将数据文件夹移至/home目录下

  # make
  # make install
  # scripts/mysql_install_db
  # chown -R root /usr/local/mysql
  # chown -R mysql /home/data
  # chgrp -R mysql /usr/local/mysql
  # cp support-files/my-medium.cnf /etc/my.cnf
  # cd /usr/local/mysql
  # bin/safe_mysqld &
  # bin/mysqladmin -u root password "123"
  # bin/mysqladmin -u root -h linux password "123"

  修改主机为linux上MySQL的root密码为123
  # vi /etc/rc.d/rc.local

  在最后添加: su mysqluser -c "/usr/local/mysql/share/mysql/mysql.server start"
  保存退出

  若要停止MySQL则执行
  # /usr/local/mysql/share/mysql/mysql.server stop

3、安装PHP

  在现行的官方网站上的PHP版本是无法与Apache2整合于一起的,必须先到 http://snaps.php.net 上下载PHP的最新开发版本。该站点是PHP团队开发中与Apache2整合的新版本,每天更新。

  将php4-latest.tar.gz复制到/usr/local/src目录下
  # tar zxvf php4-latest.tar.gz
  # cd php4-200208212100 (目录会有所不同)
  # ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-mail --with-apxs2=/usr/local/apache/bin/apxs --enable-track-vars
  # make
  # make install
  # cp php.ini-recommended /usr/local/php/lib/php.ini
  虽然很多文章都是以php.ini-dist作为配置文件的,但出于安全上的考虑,笔者更喜欢用recommended的。^_^

4、更新链接库及添加PHP识别

  # vi /etc/ld.so.conf
  在最后添加 /user/local/mysql/lib
  保存退出

  # ldconfig

  # vi /usr/local/apache/conf/httpd.conf
  在适当的位置添加下面语句以识别PHP文件
  AddType application/x-httpd-php .php
  LoadModule php4_module modules/libphp4.so
  在DirectoryIndex后面添加index.php

  附注: 在网路上的某些文章中对于PHP的识别采用Filter的模式,如下语句:

  AddType text/html .php
  AddInputFilter PHP .php
  AddOutputFilter PHP .php

  但经笔者多次验证,目前的版本中还无法用Filter的模式识别PHP,仍须用LoadMoudle的方式。或是笔者操作有误,如果你成功了,麻烦告诉我。

  至此,Linux下的Apache2+PHP+MySQL整合完成。^_^

  附注: 在安装VBB的时候附件上传无法正常显示附件的中文名称,会出现乱码,在MySQL的编译中加入中文字符集也不起作用。如有谁知道,请告诉我一下。*_*

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章