Rss & SiteMap

曙海教育集团论坛 http://www.bjzhda.cn

曙海教育集团论坛
共1 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:Linux下搭建PHP5 mysql5开发环境

1楼
wangxinxin 发表于:2010-11-25 13:40:00
以下是本人以centos5.3下安装配置php5的整个过程的记录。整理好,以方便自己日后查阅,有需要者可参阅。
(须先安装好了gcc)
需要的软件列表:

ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
curl-7.19.5.tar.gz
freetype-2.3.9.tar.gz
gd-2.0.35.tar.gz
httpd-2.2.13.tar.gz
jpegsrc.v7.tar.gz
libmcrypt-2.5.8.tar.gz
libpng-1.2.40.tar.gz
libxml2-2.6.30.tar.gz
libxslt-1.1.22.tar.gz
mcrypt-2.6.8.tar.gz
mhash-0.9.9.9.tar.gz
mysql-5.1.30.tar.gz
php-5.3.0.tar.gz
phpMyAdmin-3.1.2-all-languages.tar.gz
zlib-1.2.3.tar.gz


把以上软件下载到 ~/software目录下。再创建解压目录~/software/unzip/,
在~/software目录下执行:

tar -zxvf ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz -C unzip/ && 
tar -zxvf curl-7.19.5.tar.gz -C unzip/ && 
tar -zxvf freetype-2.3.9.tar.gz -C unzip/ && 
tar -zxvf gd-2.0.35.tar.gz -C unzip/ && 
tar -zxvf httpd-2.2.13.tar.gz -C unzip/ && 
tar -zxvf jpegsrc.v7.tar.gz -C unzip/ && 
tar -zxvf libmcrypt-2.5.8.tar.gz -C unzip/ && 
tar -zxvf libpng-1.2.40.tar.gz -C unzip/ && 
tar -zxvf libxml2-2.6.30.tar.gz -C unzip/ && 
tar -zxvf libxslt-1.1.22.tar.gz -C unzip/ && 
tar -zxvf mcrypt-2.6.8.tar.gz -C unzip/ && 
tar -zxvf mhash-0.9.9.9.tar.gz -C unzip/ && 
tar -zxvf mysql-5.1.30.tar.gz -C unzip/ && 
tar -zxvf php-5.3.0.tar.gz -C unzip/ && 
tar -zxvf phpMyAdmin-3.1.2-all-languages.tar.gz -C unzip/ &&
tar -zxvf zlib-1.2.3.tar.gz -C unzip/

将所有软件解压到unzip/目录下。

进入unzip/目录,开始安装:
1.安装jpeg
  cd jpeg-7/ &&
  ./configure --prefix=/usr/local/jpeg7 --enable-shared --enable-static  &&
  make && make install && cd ..

2.安装libpng
  cd libpng-1.2.40/ &&
  ./configure --prefix=/usr/local/libpng &&
  make && make install && cd ..

3.安装freetype
  cd freetype-2.3.9/ &&
  ./configure --prefix=/usr/local/freetype &&
  make && make install && cd ..

4.安装zlib
  cd zlib-1.2.3/ &&
  ./configure --prefix=/usr/local/zlib &&
  make && make install && cd ..
 
5.安装gd
 5.1 安装gd必须先检查一下 gd-2.0.35/gd_png.c 文件,对png.h的引用路径是否正确。
  用vi打开此文件 :
  vi gd-2.0.35/gd_png.c
  在第16行:
  ========
  #include "png.h"
  ========    
  把它改为你的libpng安装路径下的png.h。若libpng按上面第2步安装的,那么应该改为:
  ========
  #include "/usr/local/libpng/include/png.h"  
  ========
  这样在编译过程中就不会出现以下错误:
  ===========
  aclocal:configure.ac:64: warning: macro `AM_ICONV' not found in library
  ...
  ===========
 5.2 修改完保存退出后,继续安装gd:
    cd gd-2.0.35/ &&
    ./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg7 --with-zlib-dir=/usr/local/zlib --with-png=/usr/local/libpng --with-freetype=/usr/local/freetype &&
    make && make install && cd ..

6.安装libxml2
  cd libxml2-2.6.30/ &&
  ./configure --prefix=/usr/local/libxml2 &&
  make && make install && cd ..

7.安装libxslt
  cd libxslt-1.1.22/ &&
  ./configure --prefix=/usr/local/libxslt --with-libxml-prefix=/usr/local/libxml2  &&
  make && make install && cd ..

8.安装apache
 8.1 安装:
    cd httpd-2.2.13/ &&
    ./configure --prefix=/usr/local/apache --enable-modules=so --enable-rewrite &&
    make && make install && cd ..

 8.2 检测。安装完后运行:/usr/local/apache/bin/apachectl -k start 启动apache,再打开浏览器进入http://localhost,若显示"It works!",则表示apache已经安装好了。
    (若执行启动命令时,打印错误“httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName”,
     暂时可以不管,这是由于未配置好ServerName,后面有apache的配置说明)


9.安装mysql
 9.1 安装:
    cd mysql-5.1.30/ &&
    ./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-extra-charsets=all &&
    make && make install

 9.2 用mysql_install_db创建MySQL授权表初始化:
    /usr/local/mysql/bin/mysql_install_db --user=root

 9.3 添加MySQL配置文件:
    如果你想要设置一个选项文件,使用support-files目录中的一个作为模板。在这个目录中有4个模板文件,是根据不同机器的内存定制的。
    cp support-files/my-medium.cnf /etc/my.cnf

 9.4 启动mysql:
  /usr/local/mysql/bin/mysqld_safe --user=root &

 9.5 检测是否启动:
  /usr/local/mysql/bin/mysql -u root
  如果能显示:
  =============
  Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

  mysql>
  =============
  则表明 mysql 已经正常启动。输入exit;退出。

 9.6 设置root密码。默认安装密码为空,为了安全,最好把密码修改掉
 /usr/local/mysql/bin/mysqladmin -uroot password yourpassword
 

10. 安装PHP
  10.1 安装:
    cd php-5.3.0/ &&
    ./configure --prefix=/usr/local/php5 --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache/bin/apxs --with-gd=/usr/local/gd2 --with-jpeg-dir=/usr/local/jpeg7 --with-zlib-dir=/usr/local/zlib --with-png-dir=/usr/local/libpng --with-freetype-dir=/usr/local/freetype --enable-mbstring=all  --enable-mbregex --with-config-file-path=/usr/local/php5  --enable-soap --with-xsl=/usr/local/libxslt --enable-sockets &&
    make && make install
 
  10.2 复制配置文件:
    cp php.ini-development /usr/local/php5/php.ini
  10.3 用vi打开 查找date.timezone 去掉前面的分号,并改为date.timezone =PRC

11.配置apache:
  11.1 用vi打开/usr/local/apache/conf/httpd.conf
  11.2 查找 LoadModule 可以看到 LoadModule php5_module modules/libphp5.so 这是安装时设置好的,但也务必检查一下。
  11.3 查找 AddType 在“AddType application/x-gzip .gz .tgz” 下面添加一行:AddType application/x-httpd-php .php
  11.4 查找DirectoryIndex,在DirectoryIndex index.html 后加上index.php(用空格隔开)
  11.5 查找#ServerName,把#去掉,后面的IP改成你的IP或localhost
  11.6 查找 DocumentRoot 把 "/usr/local/apache/htdocs" 修改成你的php文件存放路径,也可以不改.但必须保证你的apache用户(参看11.7)对此目录可读可写。
  11.7 查找 User ,把User daemon修改成你的apache用户(只需保证此用户对DocumentRoot可读可写即可)
  11.8 重启 apache ,若报以下错误:
       ===========
        httpd: Syntax error on line 53 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/modules/libphp5.so
        into server: /usr/local/apache/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied
       ===========
      这是因为Linux有一个SELinux保护模式引起的。
      有两种解决办法:
      1)关闭SELINUX : 用vi打开 /etc linux/config 将SELINUX=enforcing 改成SELINUX=disabled 需要重启。
      2)不关闭SELINUX的方法:
        执行以下shell(可能需要以root用户来执行):
        setenforce 0 && chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so && setenforce 1
      再重新启动apache.

至此所有基本的LAMP环境安装完毕。
以下是选装的,可装可不装:

12. 安装ZendOptimizer(zend加速引擎)
  12.1 安装:
       cd ZendOptimizer-3.3.3-linux-glibc23-i386/ && ./install && cd ..
       然后像在windows下安装软件一样,一路OK或yes下去,直到“Enter the location of your php.ini file”,输入你的php.ini文件所在的目录,即/usr/local/php5/,
       再接着OK/yes,直到安装完成。

13. 为了方便管理mysql数据库,可以安装phpMyAdmin:
  13.1 直接把unzip/目录下的phpMyAdmin-3.1.2-all-languages 移动到/usr/local/apache/htdocs/ 下,并把它改为apache用户及组所属。
    mv phpMyAdmin-3.1.2-all-languages/ /usr/local/apache/htdocs/phpmyadmin
    chown -R yourApacheUser.yourApacheGroup /usr/local/apache/htdocs/phpmyadmin/
  13.2 配置:
    cd /usr/local/apache/htdocs/phpmyadmin/
    cp config.sample.inc.php config.inc.php  (把配置示例复制一份,作为正式配置文件) 
    用vi打开config.inc.php , 查找blowfish_secret,随便填入一个字符串值,只要保证这变量不为空就行;
    再查找controluser及controlpass 分别填入你的mysql用户名及密码
  13.3 打开浏览器,浏览http://localhost/phpmyadmin,输入用户名及密码,即可登录mysql进行数据库管理。

14.以上进入phpmyadmin时可能会有提示:
   ==========
   无法载入 mcrypt 扩展,<br />请检查 PHP 配置
   ==========
   这是因为没有安装mcrypt 导致的。mcrypt是一个功能强大的加密算法扩展库。
   在此顺便介绍一下如何安装PHP扩展。
   安装PHP mcrypt扩展,必须先安装libmcrypt 及 mhash ,这两个请直接安装在/user/local目录,否则后面安装mcrypt时会提示找不到相关文件。
  14.1 安装libmcrypt :
   cd libmcrypt-2.5.8/ && ./configure &&  make && make install && cd ..
  14.2 安装mhash:
   cd mhash-0.9.9.9/ && ./configure &&  make && make install && cd ..
  14.3 安装mcrypt:
    cd mcrypt-2.6.8/ &&  LD_LIBRARY_PATH=/usr/local/lib 
    ./configure --prefix=/usr/local/mcrypt --with-libmcrypt-prefix=/usr/local &&
    make && make install cd ..
 
    (LD_LIBRARY_PATH=/usr/local/lib  是指定libmcrypt及mhash的库文件所在目录,编译时与下面的./configure...之间不能用 “&&”号,只能用空格隔开。 )
  14.4 编译php 中的mcrypt扩展:
     cd php-5.3.0/ext/mcrypt &&
     /usr/local/php5/bin/phpize  &&
     ./configure --with-php-config=/usr/local/php5/bin/php-config --with-mcrypt=/usr/local/mcrypt &&
     make && make install 
  14.5 修改php.ini:
    用vi打开 /usr/local/php5/php.ini 查找extension,在一大堆extension=*.dll下面追加一行:extension=mcrypt.so
    (注意extension=mcrypt.so 前面不能加“;”),保存,退出并重启apache
   再刷新一下http://localhost/phpmyadmin,就会发现,没有mcrypt警告提示了,表明mcrypt已经安装好。
共1 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2009 曙海教育集团
Powered By 曙海教育集团 Version 2.2
Processed in .04688 s, 2 queries.