LIUNX9+MYSQL4.1+GD2.0+TRUETYPE+GIF SUPPORT + APACHE2.0+ + PHP4.3.10+ZEND 整和!

说明:

主要是以假设php网站为目标,网站使用了GD库(包括GIF create功能),采用zend加速,数据库用的是Mysql,由于程序设计和数据库使用了一些新版本的新特性,所以没办法使用Linux默认安装的Httpmysql服务,需要自己配制安装。

 

这方面的文章和教程很多了,我写这个笔记主要是为了自己备忘和总结经验。还有就是明确地为架设同类站点的程序员参考,因为很多程序员都没有太多时间研究Linux服务器的配置,希望能给他们省点儿时间。希望对Linux比较熟悉的高手或是网管朋友多多批评指正,不然有错误害了人可就不好了,呵呵。

准备工作

首先你需要安装Linux,我推荐用Red Hat Linux,版本8.0以上就可以了,因为我在RH8RH9Fedora core2上面都用下面的方法安装成功过,其他的版本我没有试过,应该最好是用内核版本较高的Linux,这样编译比较少出问题。

 

以下是我用到的软件及下载地址。

Apache

httpd-2.0.54.tar.gz         下载地址:http://httpd.apache.org/download.cgi

l         说明:没有给出直接链接,因为Apache.org总是提供最新的版本下载,有可能现在已经不是2.054了,而是更高的版本。注意要下载源码包。

PHP

php-4.3.11.tar.gz              下载地址:http://www.php.net/downloads.php

l         说明:源码包

Mysql

mysql-max-4.1.12-pc-linux-gnu-i686.tar.gz

下载地址:http://dev.mysql.com/downloads/mysql/4.1.html

l         说明:反复装过几次,我个人觉得就Mysql而言,二进制包比RPM包的安装较少出问题,所以我个人推荐安装二进制包,而且RPM包一旦出问题,不容易查出问题所在。源码包编译也不错的,不过好像Mysql.com上不提供源码包下载了:(

GD

gd-2.0.33.tar.gz              下载地址:http://www.boutell.com/gd/

l         说明:gd2.0.29开始就恢复GIF创建的支持了,这是一个珍贵的版本,建议保留一个,说不定什么时候又闹版权问题弄得不支持了,那样又要打补丁,很麻烦。GIF真的很变态,支持共享!

jpegsrc.v6b.tar.gz             下载地址:http://www.ijg.org (这个竟然是传说中的官网)

libpng-1.2.7.tar.gz           下载地址:http://www.libpng.org/pub/png/libpng.html

zlib-1.2.2.tar.gz              下载地址:http://www.gzip.org/zlib/

freetype-2.1.9.tar.gz  下载地址:http://www.freetype.org/

Zend

ZendOptimizer-2.5.10-linux-glibc21-i386.tar.gz       下载地址:http://www.zend.com/

卸载:

我们需要把原来系统自带的或者后来采用rpm方式安装的Apache | mysql | php软件卸载掉,我听说不卸载rpm也是可以的,不会影响源码包或者二进制包的安装,就是将来你不起动那些进程就没问题了,但我还是建议卸载,因为rpm方式安装的软件把各种文件放在很多奇怪的地方,我感觉是非常不好管理的。

 

下面的卸载范例是Fedora core2默认安装的包。

卸载Mysql

[root@yourdomainname/]# rpm -qa | grep mysql

mysql-3.23.58-9

php-mysql-4.3.4-11

mod_auth_mysql-20030510-4.1

mysql-server-3.23.58-9

 

l         说明:rpm –qa | grep mysql 命令是为了把mysql相关的包都列出来,我上面的例子是Fedora core2默认安装mysqlrpm软件包列表,如果是别的Linux版本列出来的列表有可能会不一样,不过不用担心,不管是什么,卸载都从最下面的一个包开始,直到卸载掉第一个为止。

l         比如:在这个例子中,我们应该先卸载mysql-server-3.23.58-9 方法如下:

 

rpm –e mysql-server

 

l         说明:rpm –e 是卸载rpm包的命令,后面是包名称,最后的版本号是不用打的,比如我们下一步卸载mod_auth_mysql-20030510-4.1包,方法如下:

 

rpm –e mod_auth_mysql

卸载Apache

[root@ yourdomainname /]# rpm -qa | grep httpd

httpd-2.0.49-4

system-config-httpd-1.2.0-3

httpd-manual-2.0.49-4

 

l         说明:方法跟卸载Mysql一样,不用说了吧

卸载PHP

[root@ yourdomainname /]# rpm -qa | grep php

php-odbc-4.3.4-11

php-4.3.4-11

php-mysql-4.3.4-11

php-pear-4.3.4-11

php-ldap-4.3.4-11

php-pgsql-4.3.4-11

 

l         说明:方法跟卸载Mysql一样,不用说了吧

l         注意:卸载的时候如果卸载不掉,系统一般会提示包的依赖关系,并且列出依赖的包的名称,先卸载提示依赖的包就可以了。

l         如果实在实在有卸载不掉的包,可以加—nodeps这个参数来卸载,比如我们卸载php-4.3.4-11,实在卸不掉了。就用:
[root@ yourdomainname /]# rpm -e php-4.3.4-11 –nodeps 
命令很强硬,应该行的。

安装:

安装Mysql二进制包

解压缩:

# tar zxvf mysql-max-4.1.12-pc-linux-gnu-i686.tar.gz /usr/local

# cd /usr/local

# mv mysql-standard-4.0.20-pc-linux-i686 mysql

 

解压缩以后,可以看到mysql目录里面有一个文件叫INSTALL-BINARY,里面有很详细的二进制安装说明(可惜英文的),如果能看明白就基本上搞定了,我是看不懂地。其实解压以后,安装工作基本上已经完成了,配置一下就可以工作了。

 

我知道的目录和文件的用途:

目录

目录的内容

/bin

客户程序和mysqld服务器

/data

日志文件和数据库文件存放的地方,这个位置跟源码包的安装是有区别的,源码包的目录是var

/include

头文件 这些文件是php编译时会用到的

/lib

库文件 这些文件是php编译时会用到的

/scripts

mysql_install_db    就这一个文件,初始化数据库

 

 

添加用户和组:

下面添加 mysql 用户组和用户(如果你刚刚卸载掉mysql,组和用户都是存在的,验证一下吧),如果系统中还没有mysql组和用户,建立他们:

# groupadd mysql

# useradd -g mysql -d /usr/local/mysql -s /sbin/nologin mysql

l         上面第一条命令建立mysql组,第二条添加mysql帐号,并设定其主目录为/usr/local/mysql,如果你的mysql解压在别的地方就改一下,同时出于安全考虑设定该帐号不可以登录系统

 

初始化数据库:

# scripts/mysql_install_db --user=mysql

mysql这个用户运行 /usr/local/mysql/scripts目录下的数据库初始化程序

l         注意:这个命令只能在mysql的安装目录下(/usr/local/mysql)执行,别的地方执行是绝对不可以的,也不要到scripts目录底下去执行。

 

权限设定:

# chown -R root  .

# chown -R mysql data

# chgrp -R mysql .

 

启动一下试试:

# /usr/local/mysql/bin/safe_mysqld

# /mysql

mysql>

 

最后将safe_mysqld拷贝到safe_mysqld /etc/rc.d/init.d/ 成为系统启动的守护进程!

 

这就意味着成功安装了mysql了,其他的事情推荐安装了apache 编译了php以后再做,因为那时候上传一套phpmyadmin就完事大吉了。

 

 

 

 

安装APACHE2:

 

首先# tar zxvf  apache.gar.gz

./configure -prefix=/usr/local/apache2 -enable-so (可改为你自己的目录;-enable-so用于加载connector,不可省略,你还可以加上你自己的其他模块)
make
make install
cd /usr/local/apache2/conf
vi httpd.conf
更改:servername 你的机器ip或域名

 

1、  安装jpeg-6b
#./configure
#make
编译成功,但是在安装的时候报错,系统提示不能将文件拷贝到/usr/local/man/man1这个目录,于是建立目录以后安装成功:

#mkdir /usr/local/man & /usr/local/man/man1
安装记录

# make install
# make install-lib  //
以前因为没有执行这一步安装导致在编译php时报错


2
libpng-1.2.5的安装配置

#cp scripts/makefile.gcmmx makefile //makefile.gcmmx
是针对MMX指令集优化的

#make && make install

3
zlib-1.1.4安装配置

#./configure --shared //shared
生成zlib的共享库文件

#make && make install

4
freetype-2.1.5安装配置

#./configure
#make && make install

 

 

5.gd-1.0.15安装配置
#./configure
配置完成后,注意输出的信息是否如下
:
** Configuration summary for gd 2.0.15:

   Support for PNG library:          yes
   Support for JPEG library:         yes
   Support for Freetype 2.x library: yes
   Support for Xpm library:          no
Xpm
库以前安装不成功,如果程序部门不常用用,一般PNG/JPEG/FREETYPE三个库打开支持就行

#make && make install
#cp gd.h /usr/local/lib 
//编译PHP的时候会缺少这个文件出错

 

 

配置PHP

./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache2/bin/apxs --enable-track-vars --with-config-file-path=/usr/local/php/etc --with-gd --enable-sysvmsg --enable-sockets --enable-sysvshm --enable-sysvsem --enable-gd-native-ttf --with-ttf=/usr/lib --disable-debug --with-tiff-dir=/usr/lib --with-jpeg-dir=/usr/local/lib --with-png-dir=/usr/local/lib --with-xml --with-gdbm-dir=/usr/lib --enable-wddx --with-freetype-dir=/usr/local/lib --with-zlib

#make

#make install

注意路径!!!

 

配置:

Httpd.conf的修改

支持php

 

虚拟主机

Httpd.conf 的虚拟主机配置的例子里面,只用到了开设虚拟主机最常用的几条命令,其他的虚拟主机功能非常强大,在http://httpd.apache.org/docs-2.0/ 里面有详细的说明:

 

l         比较有用的一 ServerAlias ,如果你需要一台虚拟主机支持多个别名的指向,就很需要了,还可以支持通配符:

 

<VirtualHost *>

ServerName server.domain.com

ServerAlias server server2.domain.com server2

# ...

</VirtualHost>

 

 

PHP.ini的修改

默认设为中文:

找到以下行:

;default_charset = "iso-8859-1"

在这行下面加一行或修改成:

default_charset = "gb2312"

 

关于PHP.ini大家弄的都很熟悉了。这里不在赘述!!

 

 

 

我遇到过的问题及解决方法

问:在使用Freetype的时候,程序提示字体找不到,并且列出了字体的名称和位置

答:其实很简单,不同版本的Freetype默认安装的目录是不一样的,找到默认安装的目录,修改程序使用正确的路径就可以了。如果是编译的程序你改不了的话,就把系统目录按照程序的要求cp一份就可以了。同时默认安装路径尽量放到/usr/local/OK了!!

 

 

 

所有文件的下栽我做了一个包。路径在http://www.smartshop.com.cn/soft/liunx_soft.rar


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值