Debian+Apache2+MySQL5+PHP5+GD

2007-01-10 22:02:43

所有资源来源于网络.本文可以任意修改,转载,复制...
~0q$N IF7B+q7J0虽然是在Debian下配置的,由于是源码包安装的,所以应该也适用于其他Linux发行版.
5ux t8W4U9j0
d5K)O z_X-Tj I(gu0首先,准备好软件包:PHPChina 开源社区门户 uGeFSoT c"j
  最新的Apache,MySQL和PHP可以去相对的官方网站去下载,也可以去http://www.phpchina.cn/bbs/forumdisplay.php?fid=24下载,下载到/tmp/src/目录下: PHPChina 开源社区门户;aX L\P
MySQL5:      http://dev.mysql.com/get/Downloa ... vmmatrix.net/mysql/PHPChina 开源社区门户 e\A$fWs
  PHP5.1.1:      http://cn2.php.net/get/php-5.1.1.tar.bz2/from/cn.php.net/mirror
0V(Y)V muD0  Apache2.0.55:   http://mirror.vmmatrix.net/apache/httpd/httpd-2.0.55.tar.gzPHPChina 开源社区门户Wva\p} i{-\n)s
  GD Library:    http://www.boutell.com/gd/http/gd-2.0.33.tar.gzPHPChina 开源社区门户4y?G]-|
  Zlib:               http://www.zlib.net/zlib-1.2.3.tar.gz
TD-Q(u+HM)d)^0  libpng :            http://prdownloads.sourceforge.n ... fig.tar.gz?downloadPHPChina 开源社区门户 R^U?&}){6j
  Jpeg v6b:        http://www.ijg.org/files/jpegsrc.v6b.tar.gz 链接似乎失效了,我把文件作为附件上传上来了
9`d0]c7uE0  FreeType2:     http://jaist.dl.sourceforge.net/ ... etype-2.1.10.tar.gz
kWL q*y6]uQ4y0如果连Debian都没有的话,可以去这里下载:http://www.phpchina.cn/bbs/viewt ... &extra=page%3D1
J0E(u-}P.yT,y!dQ0
*sH)R}U0所有操作都是以root用户来进行的.PHPChina 开源社区门户*opt%KAq
        解压:PHPChina 开源社区门户,C(}"r#\s vX/B
        对于*.tar.gz的文件使用命令tar zxvf *.tar.gz来解压;PHPChina 开源社区门户uqNh6A;^^e
        对于*.tar.bz2的文件使用命令tar jxvf *.tar.bz2来解压.
1s"P/M?4f:p0        将mysql,php,apache以及gd安装到/opt/目录下,便于管理.
&H ].R*k&O9y9?0        编译安装MySQL:
}p2kU-h0        进入到解压后的mysql目录,在终端输入下面的命令:

CODE:

./configure --prefix=/opt/mysql --with-mysqld-user=beinan --with-extra-charsets=all --with-unix-socket-path=/opt/mysql/var/mysql.sock --prefix=/opt/mysql 把mysql-4.0.16指定安装到/opt/mysql目录中;PHPChina 开源社区门户1Q+v&@4k&L(L
    --with-extra-charsets=all 对多语言的支持;
&Jo0u'X$R0pZN0    --with-unix-socket-path=/opt/mysql/var/mysql.sock 这个是指定mysql服务器启动后,联机套接字文件所处的位置和文件名,也就是说,如果mysql服务器成功启动后,就能在/opt/mysql/var目录中看到mysql.sock文件。如果看不到,肯定是mysql启动不了。PHPChina 开源社区门户1TlM&M Xo ?Sv
    --with-mysqld-user=username 这个是让mysql服务器也能让系统中普通用户username也能启动mysql服务器。用普通用户来启动mysql的好处是:mysql的进程会自己死掉自动退出。当然root用户也可以,不过有时mysql有些进程死了,但不会自动退出,root自己也杀不掉。所以用普通用户就有这样的好处,大多不会出现mysql进程已死,但不会退出的情况;

CODE:

               make
rm&HD,v-Ll+\ b9y`#{0               make install
现在MySQL已经安装完毕了.剩下的就是配置了.PHPChina 开源社区门户h;AK@Y
        配置MySQL:(以下操作都是以root执行)PHPChina 开源社区门户G g-J7e0J h,{
        输入命令:

CODE:

         cp /opt/mysql/share/mysql/my-medium.cnf /etc/my.cnf是将配置文件拷贝到/etc目录下成为my.cnf,大家可以根据自己的需要选择配置文件(配置文件在/opt/mysql/share/mysql/目录下,有my-huge.cnf my-medium.cnf my-large.cnf my-small.cnf这些).PHPChina 开源社区门户p`$_n I\ R_a
        运行

CODE:

/opt/mysql/bin/mysql_install_db这个命令是创建MySQL的授权表.

CODE:

        chmod 755 /opt/mysql/var     //设置/opt/mysql/var的目录权限为755PHPChina 开源社区门户k4a`'AY2@ e
        chown -R username:username /opt/mysql/var  //如果希望使用username这个用户来启动mysql的话PHPChina 开源社区门户 Z!SF-K#kF E
        /opt/mysql/share/mysql/mysql.server start      //启动mysql服务
dkCd }-S4A}~0        chown -R username:username /opt/mysql/      //把/opt/mysql目录归属到username这个用户下PHPChina 开源社区门户Mb7O&DI9c1J
        /opt/mysql/bin/mysqladmin -u root password 123456  //设置root用户的密码为123456
编译安装ApachePHPChina 开源社区门户s3f8yC n!`qC"g1B
        进入解压后的apache文件夹.在终端输入:

CODE:

./configure --prefix=/opt/apache --enable-track-vars --enable-cgi --with-config-file-path=/opt/apache/conf我大多是采用默认的配制.PHPChina 开源社区门户6`$L[@yT0R8{XT
PHPChina 开源社区门户 T*Y[;^| M+F
--prefix=/opt/apache 指定把apahce安装到/opt/apache目录中;PHPChina 开源社区门户dt~n]\
--enable-cgi 支持CGI;PHPChina 开源社区门户L$j@$RbS#n
--with-config-file-path=/opt/apache/conf 指定把apache的配制文件放在/opt/apache/conf中;比如httpd.conf配制文件就在这个目录中;
9U9o7|q K]Y0--enable-track-vars 为启动cookie的get/post等追踪功能PHPChina 开源社区门户l)meo}(}7~9wS%W"\Q c
PHPChina 开源社区门户+^r3Xu`8j$M:@'p$X
        编译安装:

CODE:

               make
Z;l;H!Wb\ r0               make install
安装完成后,会在/opt/目录下生成/opt/apache
fgh:qN3_1oG o0启动apache守护进程:

CODE:

/opt/apache/bin/apachectl start 打开浏览器,输入 http://localhost 就能看到一个apache的欢迎页面了,这表示我们已经成功解决了apache的安装。PHPChina 开源社区门户-~?~:XCT

qU iXQ2}i9U0        配制apache
Z"x+G$t5a*\0PHPChina 开源社区门户vu*h9`Ms9H5N
配制文件是/opt/apache/conf/httpd.conf
;I{!NSm!A9{ c.]$E0编译安装的apache默认存放主页的位置应该是/opt/apache/htdocs
-gElA4Yh4YrP0这个目录。PHPChina 开源社区门户x;BxLQ8s
在httpd.conf中比较重要的几项:

CODE:

ServerRoot "/opt/apache"这是ServerRoot指定apache程序所在的的目录,比如日志文件、配制文件等目录.

CODE:

Listen 80apache 默认端口80

CODE:

ServerAdmin root@localhost在这里,把管理员的信箱放上去

CODE:

#ServerName new.host.name:80 前面有#号就是注销掉了,设置主机名.

CODE:

DocumentRoot "/opt/apache/htdocs" 这个是存放网页的目录,也就是说,我们应该把网页的目录指定到哪里,这样当访问网址时,就调用这个目录的文件.

CODE:

<Directory "/opt/apache/htdocs">这句应该和DocumentRoot 的目录保持一致。

CODE:

#PHPChina 开源社区门户/?6Oec3b#D1r#O
# Possible values for the Options directive are "None", "All",
w.L6[%l5G1[ m/L"T0# or any combination of:PHPChina 开源社区门户,rk9Z&O%ae
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
+jEz&yb?/cM0#
Z wT9iY+mTHzV!E0# Note that "MultiViews" must be named *explicitly* --- "Options All"
}0t|P~jO6C(a0# doesn't give it to you.
;S9Z I1{Wy,nuA0#
)J/S?`3_O"Z@lG0# The Options directive is both complicated and important. Please seePHPChina 开源社区门户iN&{;R&uH
# http://httpd.apache.org/docs-2.0/mod/core.html#optionsPHPChina 开源社区门户"\lHh!coF+\O A
# for more information.
;Ze}a3mb&^)z"_0#
@L)q)PEs)osig:E0Options Indexes FollowSymLinksPHPChina 开源社区门户LRyx2zc P:E

*Q`$?$}A L%i c0#
6G A4K&hj$kY:kt0# AllowOverride controls what directives may be placed in .htaccess files.
A@ |1X}hW0# It can be "All", "None", or any combination of the keywords:PHPChina 开源社区门户bk T2zx)R"Y
# Options FileInfo AuthConfig Limit
}xq%@&ou0#PHPChina 开源社区门户4vA'C$FZ8g!mr
AllowOverride NonePHPChina 开源社区门户X7F|2p['sr.g^A

r;Ww3Lx1yj)] Tt@}0#PHPChina 开源社区门户p:y6K^%u4qEt({
# Controls who can get stuff from this server.
B9yhC[(?0#PHPChina 开源社区门户qg#KY_9a `
Order allow,denyPHPChina 开源社区门户K2Js!Af+_{/a!q@,|
Allow from all
yo)PGv0
,OxO%M#r0</Directory>

CODE:

AddDefaultCharset ISO-8859-1这句是指定网页的默认语言的,如果网页出乱中文乱码,应该改AddDefaultCharset 后面的值为GB2312。也就是改成下面这样的。PHPChina 开源社区门户 N6F@h)yAb0~0W

H | G#Dd B$Cvr0找到下面的一行在后面加上index.php ,让网站的默认页是index.php也行;

CODE:

DirectoryIndex index.html index.html.var index.php找到

CODE:

#AddType application/x-tar .tgz这行,在下面加一行。前面不要加#号。

CODE:

AddType application/x-httpd-php .php配制好后,我们就重启apache后,对那个存放网页的目录执行:

CODE:

chmod 755 目录名
(n$@ s3~O3~cq h0chmod -R 755  目录名
然后就重启apache的守护进程httpd

CODE:

/opt/apache/bin/apachectl restart在浏览器的地址栏中输入localhost或者127.0.0.1,这样应该能看到页面了吧。PHPChina 开源社区门户i$_B3R:f&wO
PHPChina 开源社区门户qWd"oD q@
如果是通过root用户,或者其它用户把相应的网站文件复制到网站存放的目录下的,要改变网站存放目录中所有文件的权限,就是上面所说的chmod -R 755 目录名.PHPChina 开源社区门户g Ku*Ce
PHPChina 开源社区门户d@iA0cr4u"m
        编译安装PHP:
8Q9YG_5A$s4jx*G)d ~p X0        zlib:PHPChina 开源社区门户,[5h v4K5E0}
                进入解压后的zlib目录.在终端执行以下命令:

CODE:

               ./configurePHPChina 开源社区门户qk{(Ji7[(z
               makePHPChina 开源社区门户F~lA,[u(ot
               make install
freetype:PHPChina 开源社区门户:b,f nJsiYB4rD
                进入解压后的freetype目录,在终端执行以下命令:

CODE:

               ./configure --prefix=/usr/local/freetype
8M|j_#_ ika#B`0               makePHPChina 开源社区门户ig$h9MX
               make install
libpng:PHPChina 开源社区门户4r%yKj&|e7u(Uk:I9\
                进入解压后的libpng目录,在终端执行以下命令:

CODE:

               ./configurePHPChina 开源社区门户b;W&p7A4m
               make
)s`ft8R3D g0               make testPHPChina 开源社区门户c*Vw1JD7P
               make install
jpeg-6b:PHPChina 开源社区门户 ?-jV,~0H&x/pb@
                进入解压后的jpeg-6b目录,在终端执行以下命令:

CODE:

        mkdir /usr/local/jpeg                    PHPChina 开源社区门户0mA*@_+d BD
        mkdir /usr/local/jpeg/bin
'IH3a7?K*D0        mkdir /usr/local/jpeg/libPHPChina 开源社区门户cH?Z"rk#M
        mkdir /usr/local/jpeg/include
(Oj:_-c{K0        mkdir /usr/local/jpeg/manPHPChina 开源社区门户 ]E7K5rpA$Y[!o R
        mkdir /usr/local/jpeg/man/man1PHPChina 开源社区门户#d/lI5P Y2y:v;V9T7m
        ./configure --prefix=/usr/local/jpeg --enable-shared --enable-staticPHPChina 开源社区门户k$qVW"^xO^
               makePHPChina 开源社区门户'kCH8h3EC&EJ
               make install
GD Library:
,IN8\}YXp:u0                进入解压后的gd目录,在终端执行以下命令:(注意不要空行)

CODE:

        ./configure --prefix=/usr/local/gd --with-jpeg=/usr/local/jpeg --with-freetype=/usr/local/freetype --with-png --with-zlib
6^xCV-b,oZ"A0               make
f*IS4C R)l4~0               make install
PHP:
R0N5}t+p0                进入解压后的gd目录,在终端执行以下命令:(不要空行)

CODE:

        ./configure --prefix=/opt/php --with-apxs2=/opt/apache/bin/apxs --with-gd=/usr/local/gd --enable-gd --enable-gd-native-ttf --with-jpeg-dir=/usr/local/jpeg --with-png --with-ttf --with-zlib --with-freetype-dir=/usr/local/freetype --enable-magic-quotes --with-mysql=/opt/mysql --with-mysql-sock=/opt/mysql/var/mysql.sock  --with-iconv --with-mbstring --enable-mbstring --enable-track-vars --enable-force-cgi-redirect --enable-ftp --with-config-file-path=/opt/php/etc --with-pear=/server/php/pear
d.qY2zu {0               make
OuYUXrP0               make install
复制php.ini-dist为php.ini,并存放到/opt/php/etc/目录下.
wKPwo)Y.E0        编辑/opt/php/etc/php.ini文件,找到如下的一行

CODE:

        ;default_charset = "iso-8859-1"在这行下面加一行

CODE:

        default_charset = "gb2312"ok,现在在httpd.conf指定的网页目录下新建index.php,输入

CODE:

<?php phpinfo() ?>保存,在浏览其中输入localhost,应该能正常显示了吧.PHPChina 开源社区门户NRex+\"g QJ
PHPChina 开源社区门户H.n#Po&ayBd%O9j
20060824更新:1)将jegsrc.v6b.tar.gz添加为附件。2)将MySQL5的下载地址更新为mysql-5.0.24.tar.gz  。 PHPChina 开源社区门户e(Td+BF
20060829更新:将“--with-apxs2=/opt/httpd/bin/apxs”修正为“--with-apxs2=/opt/apache/bin/apxs”。THX myaxl2008 PHPChina 开源社区门户/`E]5O8M z ?3}

5mbo8Hk2}F-w3W0
h1{4^%Kg$E$E0

jpegsrc.v6b.tar.gz
:@\ }MUf0(2006-08-24 17:04:26, Size: 599 kB, Downloads: 9)


TAG:

Open Toolbar