Aache的虚拟主机配置虚拟目录
3. 打开 httpd.conf 文件, 添加如下代码:
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
如果已存在,将Include前面的#去掉;
虚拟目录就是:文件+权限,不能随便指定,需要在apache里面的文件中指定,Apache安装就会在自己的目录下生成一个默认根目录是htdos就是里面还有个index.html
就是安装完了后,在浏览器地址输入localhost就会显示it works就是这个文件起作用了
但是这是可以更改的,就是通过更改DocumentRoot后面指定的目录,这个可以指定任意目录,但是缺点是只能指定一个网站,如果我们需要用一个Aapache管理
那么就需要用到虚拟主机,就是自己电脑本来是一台虚拟为多台,这个首先需要改host文件,就是很多域名对应一个ip:127.0.0.1这个其实需要考虑不同主机的问题,这个作用就是
就是一个中间桥梁的作用,不同的域名就是对应的ip,然后还是不需要在虚拟主机中去配置不同的域名访问的时候需要指定一定的目录,其实这样就区别开了不同网站,也就是说所谓的
虚拟主机就是在虚拟主机配置文件中指定不同的文件夹来达到虚拟主机的目的,这里的不同文件夹就是被外界看来是不同的主机
站点:一个网站的所有资源文件夹
出错及解决方案:
之前的虚拟主机的配置文件是这样写的:而且还参杂了很多乱七八糟的杨丽:
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "c:/Apache24/docs/dummy-host.example.com"
ServerName dummy-host.example.com
ServerAlias www.dummy-host.example.com
ErrorLog "logs/dummy-host.example.com-error.log"
CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "D:/web1"
ServerName www.sina.com
<Directory "D:/web1">
Allow from all
</Directory>
</VirtualHost>
<Directory "D:/web1">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<VirtualHost *:80>
#是否列出文件目录结构
Options indexes
#配置网站首页面
DirectoryIndex abc.html abc2.html
#配置404错误页面引导用户进入新页面
errorDocument 404 /404.html
#配置rewrite规则
RewriteEngine On
DocumentRoot "C:/myenv/apache/htdocs/static2"
#Directory配置节点,用于指定该目录下的文件或是图片的访问权限
#设置主机的错误页面或者欢迎页面
ServerName www.hsp.com
<Directory "C:/myenv/apache/htdocs/static2">
#这里可以指定是否让人访问
Allow from all
</Directory>
</VirtualHost>
结果提示:没有权限访问:403
然后我改成这样:
<VirtualHost *:80>
DocumentRoot "D:/web1"
ServerName www.sina.com
<Directory "D:/web1">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
简洁美观但成功了
还需要注意APche主配置文件的设置:应该关闭默认的虚拟目录:现在已经没有必要了。当然打开是不会影响虚拟主机,但是虚拟目录的网站无法访问的所以还是注释掉吧
然后把虚拟主机肯定是要开启的
-----------------------------------------------------
2015/12/9
通过大目录和小目录来指定文件的权限
左边是大目录,右边是小目录,大目录的权限设置了,小目录就可以继承过来
一般只有通过ip+域名或者ip+端口来寻找一个项目,这个单独ip一般不能直接访问网站,比如sina和suhu都是不行,当然也可能是因为别人封闭了
ip和域名二选一吧,如果在虚拟主机中设置了ip进行访问也可以,就是不设置域名,直接用ip解析就行。但是下一个项目如果也是用该Ip那么访问ip就是默认访问第一个项目
所以ip是必要条件,域名不是必要条件,但是域名+ip就可以更精准的确定一个项目
最后一次这样居然对了
<VirtualHost *:80>
DocumentRoot "D:/web1"
ServerName www.joy.com
<Directory "D:/web1">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
下面是首先指定大目录权限,下面的小目录就不需要指定:
<Directory "D:/web">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
Order allow,deny
Allow from all
</Directory>
<VirtualHost *:80>
DocumentRoot "D:/web/ceshi"
ServerName www.ceshi.com
<Directory "D:/web/ceshi">
</Directory>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "D:/web/cms"
ServerName www.cms.com
<Directory "D:/web/cms">
</Directory>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "D:/web/center"
ServerName www.center.com
<Directory "D:/web/center">
</Directory>
</VirtualHost>
最后又出现apache好像没有开启重写的现象,但是明明开启了,解决办法参考:
感谢:http://www.win4000.com/course_detail_27842.html
最后在http.config文件修改:
<Directory />
AllowOverride All
Require all denied
</Directory>
在公司中同事推荐使用配置一个总的,这样增加任何项目不需要再配置
<Directory "D:/web">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
Order allow,deny
Allow from all
</Directory> <VirtualHost *:80>
DocumentRoot "D:/web"
ServerName 127.0.0.1
<Directory "D:/web">
</Directory>
</VirtualHost>
Aache的虚拟主机配置虚拟目录的更多相关文章
- nginx虚拟主机配置
nginx虚拟主机配置 虚拟主机的概念虚拟主机,就是把一台物理服务器划分成多个"虚拟"的服务器,每一个虚拟主机都可以有独立的域名和独立的目录nginx虚拟主机的配置nginx的 ...
- Apache虚拟主机配置(多个域名访问多个目录)
Apache虚拟主机配置(多个域名访问多个目录) 为了方便管理虚拟主机,我决定使用一种方法,那就是修改httpd-vhosts.conf文件. 第一步首先要使扩展文件httpd-vhosts.conf ...
- LAMP虚拟主机配置以及控制目录访问
3.基于域名的虚拟主机配置 NameVirtualHost192.168.3.32:80#apache2.2.xx版本需要开启此选项,而且要和下面的保持一致:2.4.x版本就不需要此项设置了 < ...
- Apache虚拟主机配置(多个域名访问多个目录)(转)
Apache虚拟主机配置(多个域名访问多个目录) 为了方便管理虚拟主机,我决定使用一种方法,那就是修改httpd-vhosts.conf文件. 第一步首先要使扩展文件httpd-vhosts.conf ...
- Apache虚拟主机配置
在一个Apache服务器上可以配置多个虚拟主机,实现一个服务器提供多站点服务,其实就是访问同一个服务器上的不同目录.Apache虚拟主机配置有3中方法:基于IP配置.基于域名配置和基于端口配置,这里介 ...
- lamp centos虚拟主机配置
1.基于不同端口的虚拟主机配置 [root@lamp~]# vi /etc/httpd/conf/httpd.conf Listen 80 #设置监听不同的虚拟主机需要使用的端口 Liste ...
- Ngnix 安装、信号量、虚拟主机配置
ngnix的安装很简单 1.先从ngnix官网下载ngnix压缩包 wget http://nginx.org/download/nginx-1.6.2.tar.gz 2.解压并进入其目录 tar - ...
- 【nginx运维基础(2)】Nginx的配置文件说明及虚拟主机配置示例
配置文件说明 #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为当前主机的CPU总核心数. worker_processes 8; #全局错误日志定义类型, ...
- phpStudy 2014的Apache虚拟主机配置
安装phpStudy直接百度下载,傻瓜式安装很简单,一直点击下一步即可,中途根据个人爱好设置WWW目录,我的设置在D盘根目录里. 打开虚拟主机配置,打开D:\phpStudy\Apache\conf下 ...
随机推荐
- python socket知识点
---恢复内容开始--- 数据在网络上进行传播,需要通过一种通信协议.常见的通信协议有:HTTP,SMTP,DNS,FTP,SSH,SNMP,ICMP PING,DNCP. OSI(Open Syst ...
- hadoop新增kerberos租户
第一步 在kerberos服务器所在主机 通过kadmin.local,也可以通过kadmin 输入用户密码登录 kadmin.local: addprinc -randkey it1@STARYEA ...
- Linux性能分析工具与图形化方法
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~. 作者:赵坤|腾讯魔王工作室后台开发工程师 在项目开发中,经常会遇到程序启动时间过长.CPU使用率过高等问题,这个时候需要依靠性能分析工具来 ...
- 直播-rtmp学习
RTMP(实时消息传输协议),官方介绍如下: Adobe’s Real Time Messaging Protocol (RTMP), an application-level protocol de ...
- unix命令
最近需要用到一些Unix的东西 ,就学习了下这个东西,简单记录下命令,方便以后查询! 1. ls这是最基本的档案指令. ls 的意义为 "list",也就是将某一个目录或是某一个档 ...
- 在使用document.getElementById('xxx').files[0]时,关于计算图片大小
在使用文件上传属性时,一直好奇图片上传的大小时如何计算的,最近在使用中认识到的计算方式: 首先,图片大小的存储基本单位是字节(byte).每个字节是由8个比特(bit)组成.所以,一个字节在十进制中 ...
- 关于数据库的左,右,内,外连接,Union和Union all---------笔记
1.左连接 select a.filed1,a.filed2,b.filed1 from a (左表) left join b(右表) on a.commonfiled = b.commonfiled ...
- WPF学习笔记2
XML语言中添加注释为<!---->,这是和C#不同的,但是和HTML十分相似. XAML是一种基于XML的标记语言,每一个XML元素代表.NET控件的一个对象,XML元素的属性可以是.N ...
- SpringMVC参数校验
使用SpringMVC时配合hibernate-validate进行参数的合法性校验,能节省一定的代码量. 使用步骤 1.搭建Web工程并引入hibernate-validate依赖 <depe ...
- selenium2自动化测试学习笔记(四)
今天是学习selenium2第四天.总结下今天的学习成果,自动登录网易邮箱并写信发送邮件. 知识点or坑点: 1.模块化编写测试模块(类似java里的抽象方法,js的函数编写) from 包名 imp ...