1.安装Apache
以Apache使用PHP有两种方式:
作为动态模块,其在运行状态时可载入到Web服务器;
或者作为静态模块,其可直接编译到Web服务器代码中。
我们着重于第一种方式。
为了能以Apache模块使PHP动态载入,Apache服务器必须以动态共享对象(DSO, Dynamic Shared Object)编译。可以通过传递--enable-so参数使这一特性生效。
# cd /解压目录/httpd-2.2.2
# ./configure --prefix=/usr/local/apache --enable-so
# make
# make install
2.安装mysql5.0.18(源码包)
源码包可以在这个网址获得:
http://download.mysql.cn/src/2006/0208/62.html
所有这些操作需要root权限
安装开始:
# groupadd mysql
# useradd -g mysql mysql
# gunzip < mysql-VERSION.tar.gz
# cd mysql-VERSION
# ./configure --prefix=/usr/local/mysql --with-charset=gb2312
# make
# make install
# cp support-files/my-medium.cnf /etc/my.cnf
# cd /usr/local/mysql
# chown -R root .
# chown -R mysql var
# chgrp -R mysql .
# ./bin/mysqld_safe --user=mysql &
(用mysql用户启动很重要。)
# ./bin/mysql -uroot -p
(输入密码,默认密码为空,直接回车即可)
Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
如果出现上面的提示,说明mysql服务没有正常启动,因为mysql服务启动的话,会自动生成mysql.sock文件
# killall mysql
杀掉所有mysql进程,重新启动
./bin/mysql_install_db --user=mysql
重新启动
./bin/mysql -uroot -p
补充说明一下编码,安装mysql的时候,默认使用latin1编码,如果要改变默认编码,用选项--with-charst
例如:
# ./configure --with-charset=CHARSET
3.安装php
./configure --prefix=/usr/local/php5 (配置php的参数)
--with-apxs2=/usr/local/apache2/bin/apxs
--with-libxml-dir=/usr/local/lib
--with-zlib --with-zlib-dir=/usr/local/lib
--with-mysql=/usr/local/mysql (mysql 的安装目录 就是那个解压后的目录)
--enable-soap --enable-sockets
# make
# make install
将安装目录下的php.ini-dist文件改为php.ini存放的/usr/local/lib下.
4.编辑Apache配置文件,即/usr/local/apache/conf/httpd.conf,并添加以下一行:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
并在 DirectoryIndex 一行加上 index.php
然后保存文件并启动服务器
5.测试
建立test.php文件放在apache目录下的htdocs下,内容如下:
phpinfo();
?>
通过浏览器查看http://localhost/test.php
6.安装Discuz!论坛程序
①在网上找到Discuz!论坛程序并解压(过程不再赘述)
②第2步:上传
使用 FTP 软件登录您的服务器,建立一个单独的目录,或选择合适的位置,确保存放在此位置的文件能够被 web 请求所访问到,并且该目录中具有执行 PHP 代码的权限。将 Discuz! 文件包的 ./upload 目录中的全部文件和目录结构上传到服务器(注意是上传 upload 目录中的文件和目录,而不是上传包含 upload 目录本身的目录和结构)。
(如果仅是做实验,则没有必要上传到服务器哦,直接拷贝到任意有权限的目录,在httpd.conf再进行设置即可)
③ 第3步设置目录属性
您在正式安装以前,需要设置相关的目录属性,以便数据文件可以被 Discuz! 正确的读写。将以下的目录属性设置为 777。
./templates
./templates/default
./templates/default/*.*
./attachments
./customavatar
./forumdata
./forumdata/cache
./forumdata/templates
④第4步:配置数据库信息
使用编辑器打开您本地机器上的默认配置文件(config.inc.php),看到以下的内容:
$dbhost = 'localhost'; // database server
// 数据库服务器
$dbuser = 'dbuser'; // database username
// 数据库用户名
$dbpw = 'dbpw'; // database password
// 数据库密码
$dbname = 'discuz'; // database name
// 数据库名
$adminemail = 'admin@your.com'; // admin email
// 论坛系统 Email
$dbreport = 0; // send db error report? 1=yes
// 是否发送数据库错误报告? 0=否, 1=是
请依据以上的注释配置空间服务商提供的数据库服务器、用户名、密码及数据库名。如果您使用自己安装的服务器环境,我们建议您在可能的情况下,尽量不要使用 root 账号,而依据 Discuz! 及服务器上其他软件的需要,单独为每个程序分配账号和数据库,以减少安全问题发生的可能。
⑤第5步:执行安装脚本
您的安装已经进行到最后一步,请在浏览器中运行 install.php,即访问 http://您的域名/论坛目录/install.php 以完成最后的安装。
安装脚本会检查您的服务器系统环境、剩余空间、数据库环境,并具备一定的纠错功能。如果您在之前某一步骤操作有问题,通常安装脚本会发现并作以提示,请您根据提示再对安装过程进行检查。如果没有提示出问题,请您按照其中的说明,完成最后的安装。
安装成功后,请删除安装脚本(install.php),以避免被再次安装。如果你不删除,进入论坛后台会发现不能设置。
注:以上实验环境为RedHat AS4 + VMWare5.5
好了,整个过程就结束了。相信你现在应该体会到成功的喜悦了。我个人觉得学Linux,看到最终效果就特有成就感!好了,最后希望大家能踊跃加入Linux狂野部落,交流畅谈