如何配置XAMPP的虚拟主机
时间:2008-11-16
来源:互联网
apache的虚拟主机配置在两三年前就知道,但是因为太久竟然也忘记也一些规则。今天在给xampp配置虚拟主机的时候,被其内置的规则搞的有点晕。最后只能回头再去阅读一下apache文档才彻底搞清楚了。备忘一下。
首先xampp在httpd.conf里面配置禁止遍历整个文件系统,对文件系统的默认访问被禁止,保护服务器文件。原来配置如下:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
但是如果要让虚拟主机能被访问,有两个解决办法:一个是在全局里将Deny from all改成Allow from all ,但是有没发起到保护文件的作用;另一个办法是在虚拟主机里面加代码,如下:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot D:\projects\eachbrand.com
ServerName www.eachbrand.com
##能通过多个域名访问
#ServerAlias eachbrand.com *.eachbrand.com
ErrorLog logs/www.eachbrand.com-error_log
CustomLog logs/www.eachbrand.com-access_log common
<Directory />
AllowOverride All
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
apache禁止使用IP访问的实现方法
基于域名的虚拟主机规则
1.必须指定服务器IP地址(和可能的端口)来使主机接受请求,这个可以用NameVirtualHost指令来进行配置。如果服务器上所有的IP地址都会用到,你可以用"*"作为NameVirtualHost的参数。如果你打算使用多端口(如运行SSL)你必须在参数中指定一个端口号,比如"*:80"。
2.为每个虚拟主机建立
<VirtualHost>
段
<VirtualHost>
的参数与NameVirtualHost的参数必须是一样的(比如说,一个IP地址或"*"代表的所有地址)。在每个VirtualHost段中,至少要有一个ServerName指令来指定伺服哪个主机和一个DocumentRoot指令来说明这个主机的内容位于文件系统的什么地方。
3.取消中心主机, 如果你想在现有的web服务器上增加虚拟主机,你必须也为现存的主机建造一个
<VirtualHost>
定义块。这个虚拟主机中ServerName和DocumentRoot所包含的内容应该与全局的ServerName和DocumentRoot保持一致。还要把这个虚拟主机放在配置文件的最前面,来让它扮演默认主机的角色。
示范代码:
NameVirtualHost *:80
## for mainhost
<VirtualHost *:80>
ServerName localhost:80
DocumentRoot "/xampp/htdocs"
</VirtualHost>
## for virtualhost
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot D:\projects\kakapo.cn
ServerName www.kakapo.cn
##能通过多个域名访问
#ServerAlias kakapo.cn *.kakapo.cn
ErrorLog logs/www.kakapo.cn-error_log
CustomLog logs/www.kakapo.cn-access_log common
</VirtualHost>
<Directory />
AllowOverride All
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
首先xampp在httpd.conf里面配置禁止遍历整个文件系统,对文件系统的默认访问被禁止,保护服务器文件。原来配置如下:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
但是如果要让虚拟主机能被访问,有两个解决办法:一个是在全局里将Deny from all改成Allow from all ,但是有没发起到保护文件的作用;另一个办法是在虚拟主机里面加代码,如下:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot D:\projects\eachbrand.com
ServerName www.eachbrand.com
##能通过多个域名访问
#ServerAlias eachbrand.com *.eachbrand.com
ErrorLog logs/www.eachbrand.com-error_log
CustomLog logs/www.eachbrand.com-access_log common
<Directory />
AllowOverride All
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
apache禁止使用IP访问的实现方法
基于域名的虚拟主机规则
1.必须指定服务器IP地址(和可能的端口)来使主机接受请求,这个可以用NameVirtualHost指令来进行配置。如果服务器上所有的IP地址都会用到,你可以用"*"作为NameVirtualHost的参数。如果你打算使用多端口(如运行SSL)你必须在参数中指定一个端口号,比如"*:80"。
2.为每个虚拟主机建立
<VirtualHost>
段
<VirtualHost>
的参数与NameVirtualHost的参数必须是一样的(比如说,一个IP地址或"*"代表的所有地址)。在每个VirtualHost段中,至少要有一个ServerName指令来指定伺服哪个主机和一个DocumentRoot指令来说明这个主机的内容位于文件系统的什么地方。
3.取消中心主机, 如果你想在现有的web服务器上增加虚拟主机,你必须也为现存的主机建造一个
<VirtualHost>
定义块。这个虚拟主机中ServerName和DocumentRoot所包含的内容应该与全局的ServerName和DocumentRoot保持一致。还要把这个虚拟主机放在配置文件的最前面,来让它扮演默认主机的角色。
示范代码:
NameVirtualHost *:80
## for mainhost
<VirtualHost *:80>
ServerName localhost:80
DocumentRoot "/xampp/htdocs"
</VirtualHost>
## for virtualhost
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot D:\projects\kakapo.cn
ServerName www.kakapo.cn
##能通过多个域名访问
#ServerAlias kakapo.cn *.kakapo.cn
ErrorLog logs/www.kakapo.cn-error_log
CustomLog logs/www.kakapo.cn-access_log common
</VirtualHost>
<Directory />
AllowOverride All
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
作者: jjabc 发布时间: 2008-11-16
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28