Apache下配置虚拟主机总结
2014-07-21 18:10
225 查看
如果一台服务器想要挂多个网站,就需要为该服务器配置虚拟主机
配置方法有两种:
1.如果每个网站的IP地址是不同的那么就是基于IP的虚拟主机
2.如果每个网站的IP地址相同,访问的域名不同则为基于主机名
1.基于IP的虚拟主机步骤
在linux下
linux下面创建IP地址的方法
Linux的hosts文件在 /etc/目录下 可以用VI编辑器编辑
其他的均相同
2.基于主机名的虚拟主机步骤
步骤:
基于主机名不需要添加IP地址但仍需要添加IP地址与域名对应关系设置成:
修改apache配置文件htdocs: 将Include conf/extra/httpd-vhosts.conf前面的#号去掉
#必须指定服务器IP地址(和可能端口)来使主机接受请求,这里使用*代表所有地址
NameVirtualHost *:80
<VirtualHost *:80>
#与全局的ServerName参数相同
ServerName *
#与全局的DocumentRoot参数相同
DocumentRoot D:/PHP/Apache/docs/
4000
</VirtualHost>
<VirtualHost *:80>
ServerAdmin www.test1.com
DocumentRoot "D:/PHP/Apache/htdocs/testSite1"
<Directory "D:/PHP/Apache/htdocs/testSite1">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin www.test2.com
DocumentRoot "D:/PHP/Apache/htdocs/testSite2"
<Directory "D:/PHP/Apache/htdocs/testSite2">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
还有一种方法通过同一IP地址 不同端口访问
如果我们想让testsite1用80端口,testsite2用81 端口大家还可以在htdocs 中添加listen 80 listen 81
然后在 httpd-vhosts.conf 设置
<VirtualHost 192.168.0.20:80>
ServerAdmin www.test1.com
DocumentRoot "D:/PHP/Apache/htdocs/testSite1"
<Directory "D:/PHP/Apache/htdocs/testSite1">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost 192.168.0.20:81>
ServerAdmin www.test2.com
DocumentRoot "D:/PHP/Apache/htdocs/testSite2"
<Directory "D:/PHP/Apache/htdocs/testSite2">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
这样我们就可以用192.168.0.20:81访问testsite2了。 如果想在internet访问IP地址必须是静态的
配置方法有两种:
1.如果每个网站的IP地址是不同的那么就是基于IP的虚拟主机
2.如果每个网站的IP地址相同,访问的域名不同则为基于主机名
1.基于IP的虚拟主机步骤
在linux下
linux下面创建IP地址的方法
Linux的hosts文件在 /etc/目录下 可以用VI编辑器编辑
其他的均相同
2.基于主机名的虚拟主机步骤
步骤:
基于主机名不需要添加IP地址但仍需要添加IP地址与域名对应关系设置成:
修改apache配置文件htdocs: 将Include conf/extra/httpd-vhosts.conf前面的#号去掉
#必须指定服务器IP地址(和可能端口)来使主机接受请求,这里使用*代表所有地址
NameVirtualHost *:80
<VirtualHost *:80>
#与全局的ServerName参数相同
ServerName *
#与全局的DocumentRoot参数相同
DocumentRoot D:/PHP/Apache/docs/
4000
</VirtualHost>
<VirtualHost *:80>
ServerAdmin www.test1.com
DocumentRoot "D:/PHP/Apache/htdocs/testSite1"
<Directory "D:/PHP/Apache/htdocs/testSite1">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin www.test2.com
DocumentRoot "D:/PHP/Apache/htdocs/testSite2"
<Directory "D:/PHP/Apache/htdocs/testSite2">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
还有一种方法通过同一IP地址 不同端口访问
如果我们想让testsite1用80端口,testsite2用81 端口大家还可以在htdocs 中添加listen 80 listen 81
然后在 httpd-vhosts.conf 设置
<VirtualHost 192.168.0.20:80>
ServerAdmin www.test1.com
DocumentRoot "D:/PHP/Apache/htdocs/testSite1"
<Directory "D:/PHP/Apache/htdocs/testSite1">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost 192.168.0.20:81>
ServerAdmin www.test2.com
DocumentRoot "D:/PHP/Apache/htdocs/testSite2"
<Directory "D:/PHP/Apache/htdocs/testSite2">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
这样我们就可以用192.168.0.20:81访问testsite2了。 如果想在internet访问IP地址必须是静态的
相关文章推荐
- PHP中级篇 Apache配置httpd-vhosts虚拟主机总结及注意事项[OK]
- Apache配置httpd-vhosts虚拟主机总结及注意事项
- Apache配置httpd-vhosts虚拟主机总结及注意事项
- Apache下配置虚拟主机的问题与总结
- PHP中级篇 Apache配置httpd-vhosts虚拟主机总结及注意事项[OK]
- Apache下配置虚拟主机总结
- Apache 配置httpd-vhosts虚拟主机总结及注意事项
- 配置apache虚拟主机的实例总结
- Linux运维笔记-文档总结-Apache基本配置的介绍和语言支持,虚拟主机,访问控制的实现
- PHP中级篇:Apache配置httpd-vhosts虚拟主机总结及注意事项【OK】
- Apache下配置虚拟主机总结
- PHP中级篇 Apache配置httpd-vhosts虚拟主机总结及注意事项
- Apache 配置httpd-vhosts虚拟主机总结及注意事项
- PHP中级篇 Apache配置httpd-vhosts虚拟主机总结及注意事项(转载)
- PHP中级篇 Apache配置httpd-vhosts虚拟主机总结及注意事项[OK]
- MAC 配置 多端口(虚拟主机) apache 总结
- apache2.2.9配置虚拟主机问题
- 如何配置apache一个ip多域名的虚拟主机?
- win+apache下配置虚拟主机和绑定域名
- 在apache下配置虚拟主机