1、apache绑定多ip多域名
<VirtualHost 127.0.0.1:80>
DocumentRoot "/home/www/site1"
ServerName 域名列copy表
</VirtualHost>
<VirtualHost 127.0.0.2:80>
DocumentRoot "/home/www/site2"
ServerName 域名列表
</VirtualHost>
按照上面的方法加就好了 ip 域名都可以是多个的。
如果你服务器有多个公网IP,将127.0.0.1换成你的公网IP就好了。
2、如何为Apache绑定多IP多域名
无论Windows主机还是Linux主机,在Apache接收处理前,首要要确保这些IP地址已经映射到APACHE服务上,也就是说,对要首先保证操作系统本身接受这些IP地址访问,Windows绑定多IP参考前一篇文章(如何为Windows绑定多个IP和多个域名 ),Linux绑定多IP地址先自行搜索解决,以后再补充。
测试之前,确保域名已经解析到本服务器上且已生效。
本文默认按照80端口配置,还可以通过同IP但不同端口来区分不同网站,该情况一般是用在主机管理上。举个例子:可以使用http://192.168.1.100作为正常网址,而http://192.168.1.100:2020则可以用来做后台配置管理等。
绑定方法有很多种,比如虚拟绑定、单IP多域名绑定、多IP单域名绑定、多IP多域名绑定、端口识别绑定等等,而且每种绑定可能还有不同的实现方法,根据自己习惯和场合选择使用。
一、Apache绑定单IP多域名
1、示例绑定:
IP地址192.168.1.100
比如:对应两个域名http://chaodiquan.com和http://chaodiquan.cn(域名)
2、绑定过程
a、打开http.conf,该文件位置在apache/conf下面,直接用文本编辑器即可打开。
b、添加以下字段,位置靠近ServerName 127.0.0.1或ServerName localhost:80下面附近,方便修改和理解。
view source
print?
1 <VirtualHost 192.168.1.100>
2 DocumentRoot D:/xampp/htdocs/chaodiquan.com
3 ServerName zhanhelp.com
4 </VirtualHost>
5 <VirtualHost 192.168.1.100>
6 DocumentRoot D:/xampp/htdocs/chaodiquan.com/wwwroot
7 ServerName chaodiquan.cn
8 </VirtualHost>
这个方法是对指定IP地址的主机比较适合,但是如果是动态获取IP地址的主机就有问题了,则可以把<VirtualHost 192.168.1.100>统一修改为<VirtualHost *:80>,这样设置后APACHE不再对IP区分,只根据ServerName和处理优先级识别。比如很多虚拟主机要求使用CNAME解析域名,那么该虚拟主机的IP可能会变化的,就无法使用上面的配置方法,还是<VirtualHost *:80>要更好用一些。
补充一下,如果是Linux主机,DocumentRoot字段需要修改为类似:
usr/local/www/chaodiquan.com/
usr/local/www/chaodiquan.com/wwwroot
这样的路径,该路径指向网站所在根目录或子目录。
c、此外还可以为每个域名指定单独的错误日志(ErrorLog)及用户日志地址(CustomLog)只需要把下面两句添加到上述<VirtualHost ...></VirtualHos>字段之间即可,示例如下(具体存储地址可根据实际情况修改掉):
ErrorLog "logs/error.log"
CustomLog "logs/access.log" combined
d、重启Apache服务即可生效。
二、Apache绑定多IP多域名
1、示例绑定
IP地址192.168.1.100/192.168.1.101
对应两个域名http://chaodiquan.com和http://chaodiquan.cn
2、绑定过程
步骤同上文,还是打开httpd.conf,然后增加下面脚本。
view source
print?
1 <VirtualHost 192.168.1.100>
2 DocumentRoot D:/xampp/htdocs/chaodiquan.com
3 ServerName chaodiquan.com
4 </VirtualHost>
5 <VirtualHost 192.168.1.101>
6 DocumentRoot D:/xampp/htdocs/chaodiquan.cn
7 ServerName chaodiquan.cn
8 </VirtualHost>
这样就是两个IP地址对应两个域名。实际上在上面的单IP地址绑定中,提到<VirtualHost *:80>这样的设置方式也可以用来多IP访问,只是只能使用ServerName来区分,而如果输入对应的IP地址来访问,APACHE只会显示符合第一个优先级网站(假设无端口区分条件下),因为它无法判断IP地址与多域名之间的映射关系,所以使用明确的IP地址配置还是有点好处,支持直接输入IP地址访问,只是看起来不太好。
补充一下,如果是Linux主机,DocumentRoot字段需要修改为类似:
usr/local/www/chaodiquan.com/
usr/local/www/chaodiquan.com/wwwroot
这样的路径,该路径指向网站所在根目录或子目录。
3、apache 配置多域名需要改什么
需要添加虚拟主机,配置文件应该是 apache目录/conf/extra/httpd-vhosts.conf,这个文件中有示例,照着配一下即可,以下为一个简单的例子,有以下几项的简单配置就可以运行了,如果需要别名、rewrite都可以加在里边,
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/home/xyz/htdocs"
ServerName xyz.abc.com
<Directory "/home/xyz/htdocs">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
然后在httpd.conf中把这个文件载入:Include conf/extra/httpd-vhosts.conf
4、用apache如何实现单IP多域名
在你本地一般都是 分成目录才存放
localhost/dz
localhost/phpcms
或者监听多个端口,和ip对应多域名差不多
在apache的 http.conf 中配置虚拟机
在apache中根据域名不同
<VirtualHost *:80>
DocumentRoot "D:/www/baidu"
ServerAlias www.baidu.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "D:/www/aaaa"
ServerAlias www.abc.com
</VirtualHost>
<VirtualHost *:8080>
DocumentRoot "D:/www/ddd"
</VirtualHost>
5、Apache怎么设置一个ip多个域名访问
修改copyhttpd.conf文件 修改之后要重启httpd服务. service httpd restart
NameVirtualHost 192.168.164.133:80 设置此处为你的服务器ip和服务端口
第一个网站用来设置为ip直接访问定位的文件夹, nofile文件夹里设置一个空白的index.html文件即可
Apache默认ip访问直接定位于第一个网站.所以这里绑定的文件夹不能存放其它网站的文件!
6、求Apache单ip多域名泛解析的方法 目前我的配置如何?
1、ServerName baidu.com:80
这个后台“:80”去掉
2、<VirtualHost 198.1.11.88>
改成<VirtualHost *.88>
3、以上你2个都是绑泛解析的域名肯定不行的,一台只能一个
7、apache下怎样配置一个IP对应多个域名
mkdir /etc/httpd/conf/vhost
echo "Include conf/vhost/*.conf">> /etc/httpd/conf/httpd.conf
echo "NameVirtualHost *:80">>/etc/httpd/conf/httpd.conf
8、超级服务器如何一个ip绑定多个域名 httpd.conf文件如何修改 非常急!!!
你可以使用基于域来名的虚源拟主机方式来配置,使用<VirtualHost>***</VirtualHost>封装指令,分别定义和配置每一个虚拟主机。格式如下:
name virtualhost 111.111.111.111
<virtualhost 111.111.111.111>
server A
***
</virtualhost>
<virtualhost 111.111.111.111>
server B
***
</virtualhost>
<virtualhost 111.111.111.111>
server C
***
</virtualhost>