用Apache架站及虚拟主机完全篇

原创 2004年07月23日 18:19:00

如果您够幸运,有注册了自己的 domain ,还有固定的 IP 地址和 internet 连线,架设一个WWW服务器恐怕是必不可少的事情了吧?就算您还没打算正式连上 internet ,在自己的 intranet 上面能有一个WWW服务器也是非常便利的。现在 internet 上面的网站,大部份都是用 apache 来做服务器。
设定WWW

要设定 apache ,关键的档案都在 /etc/httpd/conf/ 这个目录之内,而我们只需修改三个档案就可以了:
access.conf
httpd.conf
srm.conf

然而,如果您在 access.conf 和 srm.conf 中看到下面字眼:
#
# To avoid confusion, it is recommended that you put all of your
# Apache server directives into the httpd.conf file and leave this
# one essentially empty.
#

那麽,所有的设定都将改在 httpd.conf 进行,这是可能是版本的不同所至。(tips:如果您在参考本例子的时候是用 vi 进行编辑的话,可以用 “ / ”键寻找关键字眼再做修改。)

-- access.conf --

第一个 access.conf档案,用来设定一些目录权限的:
<Directory />
Options None
AllowOverride None
</Directory>

<Directory /home/httpd/virtual/virtual1>
Options Indexes Includes FollowSymLinks
AllowOverride All
order allow,deny
allow from all
</Directory>

在这里,我定义了两个目录(它们必须是已经存在的),当使用者透过 HTTP 连接进来的时候所拥有权限。因为‘/’(根目录)至关紧要,所以我不开放任何 Option,也不容许 Override (在设定後面的 srm.conf 档案时,可以使用‘.htacess’来改变原有目录的权限)。

不过,我却允许在 /home/httpd/virtual/virtual1/ 目录下面使用 index ,也就是在没有预设 index.html (在 srm.conf 中设定) 的时候,会将目录内容显示在流览器上;而‘FollowSymLinks’呢,则允许透过 Symbolic Link 方式连接到此目录外的位置。 同时,在这个目录下,我也允许 AllowOverride All 的设定,这个我将在 srm.conf 里面再解释。

另外,我们还可以特别设定这个目录的连接限制,‘order allow,deny’是先列出允许连接的范围,然後到禁止连接的范围。不过我这里完全开放连接了(allow from all)。但您如果有必要的话,可以在此增加一些 deny 的句子在後面,例如:
allow from all
deny from 203.168.168
至於其他设定,您慢慢看档案上面的说明吧,通常接受预设值就可以了。

-- httpd.conf --

然後,我们看看 httpd.conf 这个档案。前面那些一大堆的‘LoadModule’和‘AddModule’可以不理,除非您真的知道如何修改,您唯一要做的是确定它们的路径正确就可以了。
然後到:

ServerType standalone
这个设定是让 httpd 在开机的时候就启动起来。通常使用这个设定就可以了,除非您想 httpd 以 inetd 的方式启动。

port 80
这个有点好玩,正如我们知道 port 的功能就好像一个 IP 地址的门口,port 80 是 HTTP 这个协定的预设值(在 /etc/services 可以修改),如果您想建立一个秘密网站,只想那些知门而入的朋友流览的话,那麽,将 80 改成其他号码吧,否则,使用预设值好了。

HostnameLookups off
如果您想知道连进您的网站的机器是什麽名字的话,将之设定为‘on’,否则您只会看到 IP 地址而已。

User nobody
Group nobody
这个还是别改啦,您只需确定这个‘nobody’存在於 /etc/passwd 和 /etc/group 里面就可以了。

ServerAdmin root@redhat52.siyongc.domain
您可以将之改成负责管理这个网站的管理者信箱。虽然我这里使用 root ,但我建议您将之改成 webmaster ,然後为 webmaster 建立信箱。

BindAddress *
如果您要架设虚拟主机(後面我就会教您如何做了),可以将前面的“#”拿掉。同时在後面的‘#Listen 12.34.56.78:80’句子(大约在第323行附近)後面把您设定好的虚拟 IP 地址增加上去(包括机器本身的 IP 地址)

Listen 127.0.0.1:80
Listen 192.168.0.17:80
Listen 203.30.35.134:80
Listen 10.11.127.100:8080
Listen 192.168.1.17:80
.....
(虽然,您不设定 BindAddress 和 Listen 也照样可以让虚拟主机工作,但如果您的伺服器还提供 http-proxy 服务,或使用其它的 port 提供其它 httpd 服务,则要进行设定了。)

Apache架站及虚拟主机

用Apache架站及虚拟主机完全篇如果您够幸运,有注册了自己的 domain ,还有固定的 IP 地址和 internet 连线,架设一个WWW服务器恐怕是必不可少的事情了吧?就算您还没打算正式连上 ...
  • snowman_sp
  • snowman_sp
  • 2005-12-21 16:35:00
  • 835

linux apache下虚拟主机配置方法

假设VPS的IP是58.130.17.168,有两个域名指向该IP,分别是domain1.com, domain2.com,        修改/etc/httpd/conf/httpd.conf,在...
  • u011829023
  • u011829023
  • 2015-03-31 12:30:49
  • 3402

apache 配置虚拟主机后不能使用localhost(127.0.0.1)

apache 配置虚拟主机后不能使用localhost(127.0.0.1) 会报错You don’t have permission to access / on this server. 解决...
  • u011168565
  • u011168565
  • 2017-01-06 11:14:46
  • 1398

关于apache配置虚拟主机后仍打开默认Apache目录的问题

先说一下配置Apache虚拟主机的一般方式: 先在Apache安装目录\conf\extr 打开httpd-vhosts.conf 在末尾编辑添加     DocumentRoot "你的虚...
  • MrZZhou
  • MrZZhou
  • 2016-10-18 20:56:02
  • 1550

Apache配置虚拟主机后,不能访问localhost的问题

Apache配置虚拟主机
  • y_server
  • y_server
  • 2016-11-09 14:24:16
  • 2520

linux下配置apache虚拟主机解决方案以及一些问题

回南昌了,发现这边很多公司都是用apache的,上海那边都是使用nginx服务器,可见差距啊 博主今天兴致来了,正好之前在Mac虚拟机上配了一台apache服务器,于是就到自己Mac虚拟机上配置虚拟...
  • will5451
  • will5451
  • 2017-05-18 13:28:46
  • 601

apache 虚拟主机启用SSL

以下前半部转自:http://www.chinaunix.net/jh/4/479635.html 作者wingger 后面根据实际情况写了我自己配的操作! 本文章在LINUX9+apache2.0....
  • sdomain
  • sdomain
  • 2010-01-09 23:51:00
  • 4565

Apache配置虚拟主机,关于403问题的解决

安装wamp集成开发环境后,配置虚拟主机,在浏览器中输入虚拟主机的域名,出现403 forbidden的错误. 在以前的开发工作中就遇到过这种情况,之前一直困扰着我,通过网上搜索,终于解决了这个问题。...
  • nero139
  • nero139
  • 2015-05-10 21:27:38
  • 1341

Linux基本的架站流程表

一、认识选择硬件配备 二、进行安装 三、了解Linux的基础         包含Linux的群组与使用者概念、文件的权限、硬盘的管理、资源管理、quota与帐号管理 四、认识核心编译 五、认识网络 ...
  • heart_1014
  • heart_1014
  • 2016-11-04 15:15:58
  • 925

Centos 7 Apache配置虚拟主机

哎!也真是倒霉啊,就在快将虚拟主机配置好的时候出现了这么一件事情就是,误执行了iptables -F,我的服务器iptables是已经配置好的,如果默认策略已经配置为deny的话,再使用iptable...
  • self_realian
  • self_realian
  • 2017-09-08 18:22:00
  • 1121
收藏助手
不良信息举报
您举报文章:用Apache架站及虚拟主机完全篇
举报原因:
原因补充:

(最多只允许输入30个字)