httpd-2.0.52+MySQL-4.1.10a+PHP-5.0.3(IMAP支持)
今天从装了一下机器,把这些东西也装了一遍,忽然想起经常看见有人问关于MySQL安装后起动不了的问题,就顺便把安装的过程简略写了一下,希望能给仍没有解决该问题的朋友一点帮助.
系统环境:CentOS/RHEL4/RHEL3-U(x)
工作目录:/setup_tmp
< MySQL-4.1.10a >;
# id mysql
如果有这个用户的话,就跳过下面两个命令
# groupadd mysql
# useradd -g mysql mysql
# tar zxf MySQL-4.1.10a.tar.gz (gunzip -c MySQL-4.1.10a.tar.gz | tar xf -)
# cd MySQL-4.1.10a
# ./configure --prefix=/usr/local/mysql \
--with-extra-charsets=complex \
--enable-thread-safe-client \
--enable-local-infile \
--enable-shared --enable-static \
--with-client-ldflags=-all-static \
--with-mysqld-ldflags=-all-static
make
make install
以上若成功完成,肯定没问题,我在CentOS/RHEL4/RHEL3-U(x)均成功.加哪些参数可以完成单独安装rpm开发包的功能.为以后装东西更方便.
# cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d
# ln -s /etc/init.d/mysql.server /usr/bin (做不做连接无所谓,只是为了方便)
# mv /etc/my.cnf /etc/my.cnf.org (如果你安装系统的时候没装MYSQL,不用这么做)
# cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
# /usr/local/mysql/bin/mysql_install_db
# chown -R root /usr/local/mysql
# chown -R mysql /usr/local/mysql/var
# chgrp -R mysql /usr/local/mysql
# /etc/init.d/mysql.server start
如果起不来,再执行一下:
# chown -R mysql /usr/local/mysql/var
# chgrp -R mysql /usr/local/mysql
我经常是第一此起不来,然后再执行上面两个命令就起来了.我觉得可能是var下新生成的文件仍然存在权限问题.但具体是不是这个原因我还不太肯定,只是自做聪明罢了.
< httpd-2.0.53 >;
# tar zxf httpd-2.0.53.tar.gz (gunzip -c httpd-2.0.53.tar.gz | tar xf -)
# cd httpd-2.0.53
# ./configure --prefix=/usr/local/apache2 \
--with-layout=apache \
--enable-ssl \
--enable-cgi \
--enable-cgid \
--enable-mods-shared=all
make
make install
如果你不需要那么多模块,可以去掉"--enable-mods-shared=all"而加上"--enable-so"这样可以大大减少编译安装的时间.
< php-5.0.3 >;
安装这个的时候,我选择的东西比较多,因为我要它支持IMAP,所以我下载了:
ftp://ftp.cac.washington.edu/imap/imap-2004c1.tar.Z
这个东西如果你不想要的话,可以不下.
# cp imap-2004c1.tar.Z /usr/local
# cd /usr/local
# tar zxf imap-2004c1.tar.Z
# cp -rf imap-2004c1 imap
# cd imap
# make slx SSLTYPE=none
# ln -s c-client include
# mkdir lib
# cd lib
# ln -s ../c-client/c-client.a libc-client.a
# cd /setup_tmp
# tar zxf php-5.0.3.tar.gz
# cd php-5.0.3
# ./configure --prefix=/usr/local/php \
--with-apxs2=/usr/local/apache2/bin/apxs2 \
--with-config-file-path=/usr/local/apache2/conf \
--with-mysql=/usr/local/mysql \
--with-imap=/usr/local/imap \
--enable-force-cgi-redirect \
--enable-fastcgi \
--enable-sysvsem \
--enable-sysvshm \
--enable-sockets \
--enable-dbx \
--enable-dio \
--enable-ftp \
--enable-exif \
--with-openssl \
--with-gettext \
--with-gd \
--with-jpeg-dir=/usr/lib \
--with-png-dir=/usr/lib \
--with-zlib
make
make install
很多参数你不要的话完全可以不加
# cp php.ini-dist /usr/local/apache2/conf/php.ini
# vi /usr/local/apache2/conf/httpd.conf
如果按上面的参数"--with-config-file-path=/usr/local/apache2/conf",php安装完后自动把动态库模块libphp5.so放在apache2/modules里,并在httpd.conf文件里添加了加载他的指令,但你还需要作一点事情:
添加:
DirectoryIndex index.html index.html.var index.php
和
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3
AddType application/x-httpd-php .phtml
上面三行可以写成一行,后两行也可可以不加.
修改:
ServerAdmin 你的mail地址
ServerName 你的服务器名字或服务器IP
去掉 DefaultLanguage nl 行的注释并改写"nl"为zh-CN
存盘退出,
我只是简单的做一些配置,如果你另有需求,那就自己搞吧.
# /usr/local/apache2/bin/apachectl start
打开浏览器,输入你的服务器名字或IP,你能看见APACHE的中文界面,就说明你成功了,验证你的PHP模块是否加载的一个极为简单的方法,你可以在浏览器中你的服务器名字或IP后面输入一个并不存在的路径,如果显示:
Not Found
The requested URL /c was not found on this server.
Apache/2.0.53 (Unix) DAV/2 PHP/5.0.3 Server at www.domain.com Port 80
就说明模块已经加载了,如果没有"HP/5.0.3"的字样,说明没加载,需要监查httpd.conf文件,其实如果你照我这么作了,肯定会有的,因为我不知道装过多少次这三样东西了,连我自己都装烦了,但是无奈我好奇心太强烈,所以总把机器搞瘫.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
MySQL-4.10a.tar.gz
你这个在呢里下载的源代码,现在mysql.org上只有2精制的呢
提供个下载地址
http://dev.mysql.com/get/Downloads/MySQL-4.1/mysql-4.1.10a.tar.gz/from/pick#mirrors