1、Centos6.3下 Apache+PHP+Mysql 源码安装


一、安装Apache

  1、配置

/configure --prefix=/usr/local/apache2 --with-included-apr --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-static-support --disable-userdir

  2、编译

make

  3、安装

make install

  4、启动与关闭

/usr/local/apache2/bin/apachectl start   #启动
netstat -tnl  #查看端口是否开启
/usr/local/apache2/bin/apachectl stop    #停止

  Apache安装成功后,网站的目录在Apache安装目录下的htdocs目录下。绝对路径为:/usr/local/apache2/htdocs

二、源码安装php

  1、配置

/configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc   --with-jpeg-dir --with-png-dir --with-bz2 --with-freetype-dir --with-iconv-dir --with-zlib-dir  --enable-soap --enable-gd-native-ttf --enable-ftp --enable-sockets --enable-mbstring --enable-exif --enable-memcache --enable-vld

  其中--with-apxs2=/usr/local/apache2/bin/apxs是进行apache关联,为上面安装Apache的具体路径

  2、编译

make

  编译后可能会报错,根据报错。一般都是libxml2、bzip2什么的没有安装。那我们用yum命令安装就行.缺什么安装什么

yum install bzip2
yum install bzip2-devel
yum install libxml2
yum install libxml-devel

 3、安装

make install

4、将安装包中的php.ini-dist文件复制并重命名到如下目录

cp /usr/src/php-5.2.6/php.ini-dist  /usr/local/php/etc/php.ini

三、Apache与PHP结合

       其实在/usr/local/apache2/conf/httpd.conf文件中添加如下东西即可让Apache解析PHP。都不用最下面一长串了。

  Listen 80 
  NameVirtualHost *:80 
  <VirtualHost *:80 >
       ServerAdmin [email protected]
       DocumentRoot  /usr/local/apache2/htdocs
      <Directory "/usr/local/apache2/htdocs">
       Options FollowSymLinks
       AllowOverride None
       Order allow,deny
       Allow from all 
      </Directory>
  </VirtualHost>


  1、 Apache主配置文件为:/usr/local/apache2/conf/httpd.conf
# vim /usr/local/apache2/conf/httpd.conf
 找到:
    AddType application/x-gzip .gz .tgz
 在该行下面添加
    AddType application/x-httpd-php .php

2、修改默认读取文件
    找到:
        <IfModule dir_module>
        DirectoryIndex index.html
        </IfModule>
    将该行改为
    <IfModule dir_module>
        DirectoryIndex index.html index.htm index.php
    </IfModule>
3、找到:
    #Include conf/extra/httpd-mpm.conf
    #Include conf/extra/httpd-info.conf
    #Include conf/extra/httpd-vhosts.conf
    #Include conf/extra/httpd-default.conf
    去掉前面的“#”号,取消注释。

四、配置Apache虚拟主机

1、配置文件为:/usr/local/apache2/conf/extra/httpd-vhosts.conf
将配置文件中下面一段修改为如下:

<VirtualHost *:80>
   # ServerAdmin [email protected]
    DocumentRoot "/data/www"
    ServerName www.example.com.cn
    ErrorLog "|/usr/local/apache2/bin/rotatelogs -l /www/logs/error.log-%Y%m%d 86400"
   CustomLog "|/usr/local/apache2/bin/rotatelogs -l /www/logs/access.log-%Y%m%d 86400" combined
   </VirtualHost>

说明:
    ServerAdmin 参数后为管理员email
    DocumentRoot 指的是论坛文件存放的目录
    ServerName  是论坛的域名
    ErrorLog 是论坛错误日志  通过管道使用apache自带的rotatelogs工具将日志切割为每天一个文件
    CustomLog 是论坛访问日志,同样切割为每天一个文件

2、配置Apache缺省httpd设置

  配置文件为/usr/local/apache2/conf/extra/httpd-default.conf
      将配置文件中下面一段:
  将KeepAlive On 改为KeepAlive Off

3、配置Apache的访问权限
 vim /usr/local/apache2/conf/httpd.conf
 找到
  <Directory />
    Options FollowSymlinks
    AllowOverride None
    Order deny,allow
    Deny form all
  </Directory>
改成:
  <Directory />
   Options FollowSymlinks
   AllowOverride None
   Order deny,allow
   Allow form all
  </Directory> 

4、配置Apache的运行账户

vim  /usr/local/apache2/conf/httpd.conf
 找到
    User  daemon
    Group daemon
 改成
    User www
    Group www

            

经过上面一系列:Apache终于可以解析PHP文件了


五、Mysql安装

1、配置

./configure --prefix=/usr/local/mysql --without-debug --enable-thread-safe-client --with-pthread --enable-assembler --enable-profiling --with-mysqld-ldflags=-all-static --with-client-ldflags=-all-static --with-extra-charsets=all --with-plugins=all --with-mysqld-user=mysql --without-embedded-server --with-server-suffix=-community --with-unix-socket-path=/tmp/mysql.sock

安装mysql的时候出现了No curses

    解决方式(CentOS)

        yum list|grep ncurses

        yum -y install ncurses-devel

 2、编译

make

 make时出错
  ../depcomp: line 571: exec: g++: not found
  make[1]: *** [my_new.o] 错误 127
  make[1]: Leaving directory `/usr/local/src/mysql/mysql-5.1.32/mysys`
  make: *** [all-recursive] 错误 1
 解决:
  #yum install gcc-c++ 可解决问题。
 重新指定安装路径:
  #./configure --prefix=/usr/local/mysql-5.0.90
make

3、安装

make install




















你可能感兴趣的:(1、Centos6.3下 Apache+PHP+Mysql 源码安装)