总结: 建立一个网站服务器不是个难事,关键是对linux基础命令熟悉,多参考前人的文章,还有就是不管自己看文章感觉多么容易,永远要记住一条:实践才是检验掌握与否的唯一标准.
这次试验项目就是在自己的电脑上建立HTTP服务器,其中偶是重复了一遍samba配置,DNS配置,这里就不记录samba配置,就专门记录下httpd(也就是apache)配置和DNS的配置.
前提:想做个域名为 [url]www.test.com[/url] , suse.test.com,linux.test.com 的网页.
使用工具: 建立samba做linux与windows文件之间传输,建立DNS做这三个域名的解析服务.
配置如下:
先说主要的httpd服务器的配置.
/etc/httpd/conf/httpd.conf
是
HTTPD
的主要设定档
,
可以说只要配置此文件就可配置好网页服务了
.
/etc/httpd/conf.d/*.conf
如果不想在
httpd.conf
中配置的话
,
可以自己配置
.conf
文件
. httpd
服务一启动
,conf.d
里面的配置文件会载入进去
.
文件名必须为
.conf
文件
.
/etc/httpd/modules/
模块文件夹
,
里面包含网页所需要的模块
.
/var/www/html/
网页默认的首页
,
在输入
[url]http://localhost[/url]
时显示的就是此文件夹内的网页
.
/var/log/httpd/
文档文件夹
.
对于流量大的网站
,
此文件夹要特别小心维护
.
编辑
httpd.conf
ServerTokens OS #
提供服务器的版本和操作系统信息
,
不想提供可以改为
Minor
ServerRoot "/etc/httpd" #
顶层目录
,
后面的设置文档都用的是绝对路径
.
PidFile run/httpd.pid #
记录进程数的
,
用于
WWW
服务器管理
.
Timeout 120 #
超时时间
,
多过这么久就显示无法连接
.
KeepAlive Off #
一次
TCP
连接是否持续有效
.
推荐打开
.
MaxKeepAliveRequests 100 #
如果上面是
on
的话
,
此配置才生效
,
最大连接请求数
,
可调大些
.
KeepAliveTimeout 15 #
该次连接在最后一次传输后等待延迟的时间
.
超过了就断开连接
.
保持默认值即可
.
Include conf.d/*.conf #
有了它
, conf.d
里面的配置文件才会生效
.
AddDefaultCharset UTF-8 #
网页编码配置
,
如果网页编码不是
UTF-8
的话
,
出现的会是乱码
.
可以根据情况添加
.
添加一
.conf
文件到
conf.d
目录里面去
,
在此我取名为
test.conf . # look,
绝对的绝对路径
,
全部路径是
etc/httpd/conf.d/
配置内容如下
:
NameVirtualHost *:80 #
网页端口
<Directory "/var/www/www">
Options FollowSymLinks #
让此目录里的超链接可以链接此目录以外的文件
.
AllowOverride AuthConfig #
表明进入需要认证用户名与密码
.
跟
.htaccess
文件有关
.
order allow,deny #allow
优先
,
没有写入规则的则
deny.
所以这里是全部
deny
Allow from all #
不过
,
这里
allow
优先
,
所以是所有用户可浏览网页
.
</Directory>
<Directory "/var/www/phorum">
Options FollowSymLinks
AllowOverride None #.htaccess
文件失效
Order allow,deny
Allow from all
</Directory>
#
以下是域名分配及相关域名的目录
.
<VirtualHost *:80>
ServerName linux.test.com
DocumentRoot /var/www/html
</VirtualHost>
<VirtualHost *:80>
ServerName [url]www.test.com[/url]
DocumentRoot /var/www/www
CustomLog /var/log/httpd/www.access_log Combined
</VirtualHost>
<VirtualHost *:80>
ServerName suse.test.com
DocumentRoot /var/www/suse
</VirtualHost>
文件配置完毕
.
启动
httpd
服务
[root@localhost /]# service httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]
配置开机启动
[root@localhost /]# chkconfig httpd on
OK,
完成以上配置后
,
一个简单的网页服务器就
ok
了
,
当然
,
如果需要
PHP
等动态页面支持
,
需要安装相关的软件了
.
有了网页
,
不过没有域名的支持
,
在客户端上输入
[url]www.test.com[/url]
等肯定是打不开的了
,
所以
,
又要受累了
.
首先
,
用
VI
编辑器编辑
named.conf
配置文件
.
它的实际文件并不在
etc
下
. look:
lrwxrwxrwx 1 root root 32 Jun 3 21:08 /etc/named.conf -> /var/named/chroot/etc/named.conf #这才是实际文件的位置
为什么会是在
/var/named/chrrot
下呢
?
看下
etc/sysconfig/named
文件就知道了
:
# Currently, you can use the following options:
# ROOTDIR="/some/where" -- will run named in a chroot environment.
# you must set up the chroot environment before
# doing this.
# OPTIONS="whatever" -- These additional options will be passed to named
# at startup. Don't add -t here, use ROOTDIR instead.
ROOTDIR=/var/named/chroot #
用
chroot
把文件目录重定向了
,
为了安全起见
Ok,
编辑
etc/named.conf
文件
,
在原文件后面添加这么两段命令了
:
zone "test.com" IN {
type master; #
是否是主从服务器
,
这里是主
DNS
服务器
file "test.com"; #
这个
test.com
的配置文件名
,
默认路径是在
/var/named/chroot/var/named
目录中
.
allow-update {none;}; #
不允许更新
};
zone "193.193.10.in-addr.arpa" IN {
type master;
file "10.193.147.130.zone";
allow-update {none;};
}
#
默认只安装
bind
软件包的话
,
配置文件是空的
,
需要安装
caching-nameserver
软件
.
Ok,
修改完毕后
,
就是建立上面说的两个文件了
.
先是正向解析文件
test.com (
特别注意的是
,
域名后的
”
点
”
哦
.)
$TTL 86400
@ IN SOA gw.test.com.
root.gw.test.com (
20070603 ; serial (d. adams) #
每次修改后最好改下这里的时间
.
3H ; refresh #
更新时间
15M ; retry #
更新失败后
,
多久重复一次
1W ; expiry #
重复多久后
,
不再重复
1D ) ; minimum #TTL
值
IN NS gw.test.com. #name server
的名字
IN A 10.193.193.130 #
改
name server
主机对应的
IP
gw.test.com. IN A 10.193.193.130
www IN A 10.193.193.130
suse IN A 10.193.193.130
linux IN A 10.193.193.130
然后是反相解析文件
10.193.147.130.zone
$TTL 86400
@ IN SOA gw.test.com. root.gw.test.com. (
1997022701 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS gw.test.com.
130.193.193.10.in-addr.arpa. IN PTR gw.test.com.
OK,
完成以上配置
,
基本上
,
一个简单的
DNS
服务器就
OK
了
.
哎
,
配置是比较简单的
,
不过
,
最重要的是概念熟悉
.
现在在客户端把
DNS
指向偶们新建的
DNS
服务器上
,
输入网址
[url]www.test.com[/url]或者suse.test.com
看下会不会出来网页
.
反正我的是已经成功了
.
当时遇到了个小小的问题
,
中文网页出现乱码了
,
恩
,
经过前人的指点
,
只需要修改一个地方就
OK
了
,
还是当初的
/etc/httpd/conf/httpd.conf
文件
,
找到
AddDefaultCharset UTF-8
这行
,
在后面再添加一行
AddDefaultCharset GB2312
就
OK
了
.
反正我这么修改就好了
.
详细概念说明解释参考: [url]http://linux.vbird.org[/url]
|