源码包安装LAMP+DNS+Discuz6.0 (第一篇)

RHEL4 上安装 httpd- 2.2.4 +mysql-5.0.45+php-5.2.3+discuz-6.0+dns
一.准备工作

1.
检查是否已经安装了 mysql 的相关软件包,如果有,则需先御载

# rpm -qa | grep mysql
如果有,会出现下面的两个软件包
mysql- 4.1.12 -3.RHEL4.1
mysqlclient10-3.23.58-4.RHEL4.1
接下来,我们御载以上两个包
# rpm -e mysql --nodeps
# rpm -e mysqlclient10

2.
检查是否已经安装了 libpng libxml gd jpeg(libjpeg) zlib freetype 几个软件包,如果没有,请根据自己的情况查漏补缺

# rpm -qa | grep libpng
libpng-1.2.7-1
libpng10-1.0.16-1
libpng10-devel-1.0.16-1
libpng-devel-1.2.7-1

# rpm -qa | grep ^libxml
libxml2-python-2.6.16-6
libxml2-devel-2.6.16-6
libxml2-2.6.16-6

# rpm -qa | grep ^gd-
gd-2.0.28-4
gd-devel-2.0.28-4

# rpm -qa | grep jpeg
libjpeg-6b-33
libjpeg-devel-6b-33

# rpm -qa | grep zlib
zlib-1.2.1.2-1.2
zlib-devel-1.2.1.2-1.2

# rpm -qa | grep freetype
freetype-2.1.9-1
freetype-devel-2.1.9-1

请确保你的软件包的版本号等于或高于以上显示的版本

二、安装 mysql-5.0.45
先建立一个 mysql 用户
#useradd mysql
#tar zxvf mysql-5.0.45.tar.gz
#cd mysql-5.0.45
编译前先 rpm -q gcc,g++, 如没有 , 从光盘时找 rpm 包安装上或在图形界面下 startx;system-config-packages 安装 gcc
#./configure --prefix=/usr/local/mysql --enable-thread-safe-client --enable-local-infile --with-charset=gbk --with-extra-charset=all --with-low-memory 如下图:
#make
#make install
拷贝主配置文件到 /etc 目录
#cp support-files/my-medium.cnf /etc/my.cnf
注意:文件 support-files/my-medium.cnf 在解压目录中
初始化数据库,安装数据库系统自身必须的数据库和表,并修改相应的权限
#cd /usr/local/mysql
#chown -R mysql.mysql .
#bin/mysql_install_db --user=mysql 
如下图:
 
 
 
初始化数据库后会在 mysql 目录中多出个 var 目录,这时再把文件属主改回 root 用户,才能再次改变 var 的属主
#chown -R root .
#chown -R mysql var

启动 mysql
#bin/mysqld_safe --user=mysql &
拷贝启动脚本到相应的目录,并修改其权限
cp /usr/local/src/mysql- 5.0.45 /support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod 700 /etc/rc.d/init.d/mysqld
使 mysql 能在系统启动时自动启动
#chkconfig --add mysqld
#chkconfig --level 2345 mysqld on
测试
#/usr/local/mysql/bin/mysqladmin ping
#/usr/local/mysql/bin/mysqladmin version
#/usr/local/mysql/bin/mysql
添加 root 密码
#/usr/local/mysql/bin/mysqladmin -u root password  'new-password'
如下图:
 
说明:此 root 用户为 mysql root 用户,默认密码为空
登录 :/usr/local/mysql/bin/mysql -u root -p
按提示输入密码
查看有哪些数据库 :>show databases;
创建数据库 :>create database phpbb;
使用某一数据库 :>use phpbb;
查看数据库中的表 :>show tables;
退出数据库 :>\q  如下图所示:
 
三、安装 httpd- 2.2.4
#tar jxvf httpd-2.2.4.tar.bz2
#cd httpd-2.2.4
#./configure --prefix=/usr/local/apache --enable-so --enable-ssl  --enable-track-vars --enable-rewrite  --enable-mods-shared=most
如下图所示:
 
 
#make
#make install
#echo "/usr/local/apache/bin/apachectl -k start" >> /etc/rc.local(
系统启动时服务自动启动 )
安装完成后开启 apache 服务
命令: # /usr/local/apache/bin/apachectl start
测试一下:
 
下面开始配置虚拟主机,做一个 web 站点和一个 Discuz 论坛
网站 就找一个关于 C++ 的网站,本人正在学习 C++ …….
apache 的配置
(1)httpd.conf 配置文件解析
httpd.conf 配置文件的结构 (由注释行和设置行组成)
注释行以“ # ”开始
不以“ # ”开始的行是配置文件中真正有效的设置内容
获得完整的有效配置清单
使用 grep 命令去除文件中以 # 开始的行
grep -v "^#" conf/httpd.conf
wc -1 计算 httpd.conf 文件的行数内容
#wc  -1 conf/httpd.conf      
#grep -v "^#" conf/httpd.conf  | wc -1
httpd.conf 中的全局配置
   设置项                                    说明
ServerRoot    设置 Apache 服务器的根( Root )目录 (如果不使用绝对路径,将被理解为是在服务器的根目录中)
ServerAdmin 设置 Apache 服务器管理员的 E-mail 地址 (可以通过该 E-mail 联系服务器管理员)
ServerName  设置 Apache 服务器的主机名
DocumentRoot     设置 Apache 服务器网页(文档)根目录
Listen                  设置 Apache 服务器监听的网络端口号 (默认为 80
PidFile                 设置保存 httpd 服务器程序进程号( PID )的文件 (默认为 logs/httpd.pid logs 目录在 apache 根目录                              中)
ErrorLog              设置 Apache 服务器中错误日志文件的路径和文件名(默认为 logs/error_log
CustomLog   设置 Apache 服务器中访问日志文件的路径和格式类型
Timeout               设置 Web 服务器与浏览器之间网络连接的超时秒数 (默认 300s
KeepAlive      设置为 Off 时服务器不使用保持连接功能(一次连接一次传输),传输的效率比较低;设置为 On 时(                             一次连接多次传输),可以提高服务器传输文件的效率,建议设置保持连接功能有效                       MaxKeep
AliveRequests      KeepAlive On 时,设置客户端每次连接允许请求响应的最大文件数 ,默认设置为 100 个文件
KeepAliveTimeout 用于设置保持连接的超时秒数,默认 15s ,客户机两次相邻请求超过此值时需要重新进行连接请求。
httpd.conf 中的区域设置
除全局设置外, httpd.conf 文件中的大多数设置都是包括在“区域”中的
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory> 
使用 </Directory> 定义根区域的结束
使用 <Directory /> 定义根区域的开始 (区域设置内容只作用于区域内部)
(2) 建立系统用户的个人主页 ( 这一步可做可不做 )
httpd.conf 文件配置
httpd.conf 文件中需要进行 UserDir 的设置
#grep UserDir /usr/local/apache/conf/httpd.conf
UserDir public_html
切换用户
#su - zhangsan
$ pwd
/home/zhangsan
用户目录设置
用户宿主目录需设置为其他用户可以进入
$ ls -ld  .
$ chmod o+x ~
$ ls -ld  .
用户宿主目录中需要建立 public_html 目录
$ mkdir public_html
public_html 目录中需要建立 index.html 文件
$ vi public_html/index.html
访问用户个人主页
http://192.168.10.100/~zhangsan/ (http://192.168.10.100/ 服务器地址, ~zhangsan 用户 zhangsan 的宿主目录, ~ 放在用户名前指定用
3 )域名虚拟主机的配置
httpd.conf 文件中添加虚拟主机
NameVirtualHost 192.168.10.100
<VirtualHost 192.168.10.100:80>
    ServerName www.cqyang.com
    DocumentRoot /var/c++
</VirtualHost>
NameVirtualHost 用于设置域名虚拟主机使用的 IP 地址
使用 <VirtualHost 192.168.10.100:80> </VirtualHost> 建立在地址“ 192.168.10.100: 80 上的虚拟主机区域
使用 ServerName 设置当前虚拟主机所使用的域名
使用 DocumentRoot 设置当前虚拟主机所使用的文档根目录
实例
#mkedir /var/c++  //c++ 这个文档中放入以 c++ 网页
#mkedir /var/bbs   //discuz 论坛所需要的文件
#vi /usr/local/apache/conf/httpd.conf
NameVirtualHost  192.168.10.100
 
<VirtualHost  192.168.10.100:80>
ServerName  www.cqyang.com
DocumentRoot  /var/c++
</VirtualHost>
 
<VirtualHost  192.168.10.100:80>
ServerName  bbs.cqyang.com
DocumentRoot  /var/bbs
</VirtualHost> 
配置完成时如下图所示:
 
 
测试一下如下图:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

本文出自 “独孤青扬寒舍” 博客,谢绝转载!

你可能感兴趣的:(源码,lamp,dns,包安装,Discuz6.0)