apache配置多站点
最佳回答
很多人常常看到一台服务器上跑多个站点,不同的域名访问不同的站点,就会有个疑惑:访问的时候并没有在地址栏中加入端口号,多个域名都是解析到这个服务器的IP地址,服务器怎么能够正确的分辨和解析呢?
其实还是对http协议不够了解,看下图一切一目了然
对应的在apache中有rewite和proxy模块,它们就是为了完成这些任务, 一台服务上我们配置多个 vhost,必然需要端口号,
比如:
a.com :80
b.com :8080
实际访问的时候 www.a.com 自动转发到80端口, www.b.com 则自动转发到8080端口。
网站 1:
网站 2:
这样一个服务器的 80 端口上就跑起两个站点.
没事找了个虚拟主机来试用,尝试用给的IP地址访问怎么都访问不了,一直都显示
后来仔细一想,虚拟主机是需要依赖域名的,不然没办法区分vhost,后来找到测试的域名果然可以正常访问了。
最新回答共有5条回答
-
夲人出租
回复请问怎样建立一个属于自己的网站?
1、准备好域名,做网站的基本条件
2、准备好空间。(无需备案)
3、如果自己做的话,需要一个后台程序,列如:pageadmin,dz等等后期网站代码自己控制管理,扩展修改什么的更灵活。
4、需要一套模板,如果自己懂前台设计可以按照自己的需求来设计
5、需要一个本地的搭建环境的软件(也可以使用临时域名)
-
匿名用户
回复创建一个网站真的不难,如果你是新手,我想我告诉你以下几个步骤,你也可以建成一个不错的网站,个人认为网站最终还是需要以内容取得胜利。那么怎么创建一个网站呢?
首先,你要有一个域名。域名是什么,就好比是你家的地址,只有有了域名才算是拥有了自己的网站。域名可以在网上申请,但是国内有个要求,需要有空间,有接入商,有备案。当然,也有一些免备案的,可以自己去搜索一下。域名需要解析到你的服务器空间上,依情况不同可能是A记录,也可能是别名解析。
其次,你要有一个空间。通过域名访问的文件需要有个寄存的场所,这就需要有一个空间,现在比较流行的有虚拟主机(比较便宜)、VPS主机,云主机,独立服务器等等,这个需要你自己选择。虚拟主机相对来说比较简单,各项功能就可以在控制面板实现。这里要说明的是,在完成域名解析后,空间也要绑定域名,实现双向互通。
第三,你需要一个源码程序。现在可以免费的有织梦、帝国、discuz等等,免费下载,自己安装,都有教程,这并不是一个难题。
第四,你需要有内容。网站的内容就像是你家房子的装修,有了域名就有了地址,有了空间就有了房子,但房子是毛坯的话,自然留不住过客,需要我们进行装修,就需要按照自己的想法开设不同的栏目,每个栏目下面增加丰富多彩的内容,吸引更多的网友来浏览。
第五,你需要有毅力和决心。网站的成功并不是一朝一夕,需要长期坚持更新内容,要不断地对网站进行推广,留住读者,不断提高搜索引擎权重,带来更多的流量。
-
专业建网站
回复最简单高效的方法如下:
1. 先打开Apache的配置文件httpd.conf,在这个文件,
找到这句:“#Include etc/extra/httpd-vhosts.conf”
(根据安装路径不同,上面的路径会略有不同)
把前面的#曲调,即开启了使用虚拟主机的功能;
2. 在httpd-vhosts.conf中进行虚拟主机的配置操作;也可以在httpd.conf直接写入配置,但是
不建议这么做;
3. 打开httpd-vhosts.conf文件,找到NameVirutalHost *:80,这句话的含义是制定这个主机的
IP地址和端口号;
4. 关键的virtualhost配置,在NameVirutalHost *:80的下面;
注意事项:Apache在接受请求时,首先会默认第一个VirtualHost,然后再匹配其他虚拟主
机,如果没有匹配的,就是第一个VirtualHost起作用。故,在httpd.conf中,将
<Dicrectory />(这个是所有目录的默认配置)和<Direcotry/opt/lampp/htdocs>的权限,
都默认设置为deny from all。
5. virtualhost配置实例:
<VirtualHost*:80>
ServerName *
DocumentRoot </opt/lampp/htdocs/guest>
<Directory /opt/lampp/htdocs/guest>
Order deny,allow
Allow from all
</Dire