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的虚拟主机配置虚拟目录的更多相关文章

  1. nginx虚拟主机配置

    nginx虚拟主机配置   虚拟主机的概念虚拟主机,就是把一台物理服务器划分成多个"虚拟"的服务器,每一个虚拟主机都可以有独立的域名和独立的目录nginx虚拟主机的配置nginx的 ...

  2. Apache虚拟主机配置(多个域名访问多个目录)

    Apache虚拟主机配置(多个域名访问多个目录) 为了方便管理虚拟主机,我决定使用一种方法,那就是修改httpd-vhosts.conf文件. 第一步首先要使扩展文件httpd-vhosts.conf ...

  3. LAMP虚拟主机配置以及控制目录访问

    3.基于域名的虚拟主机配置 NameVirtualHost192.168.3.32:80#apache2.2.xx版本需要开启此选项,而且要和下面的保持一致:2.4.x版本就不需要此项设置了 < ...

  4. Apache虚拟主机配置(多个域名访问多个目录)(转)

    Apache虚拟主机配置(多个域名访问多个目录) 为了方便管理虚拟主机,我决定使用一种方法,那就是修改httpd-vhosts.conf文件. 第一步首先要使扩展文件httpd-vhosts.conf ...

  5. Apache虚拟主机配置

    在一个Apache服务器上可以配置多个虚拟主机,实现一个服务器提供多站点服务,其实就是访问同一个服务器上的不同目录.Apache虚拟主机配置有3中方法:基于IP配置.基于域名配置和基于端口配置,这里介 ...

  6. lamp centos虚拟主机配置

    1.基于不同端口的虚拟主机配置 [root@lamp~]# vi /etc/httpd/conf/httpd.conf Listen 80      #设置监听不同的虚拟主机需要使用的端口 Liste ...

  7. Ngnix 安装、信号量、虚拟主机配置

    ngnix的安装很简单 1.先从ngnix官网下载ngnix压缩包 wget http://nginx.org/download/nginx-1.6.2.tar.gz 2.解压并进入其目录 tar - ...

  8. 【nginx运维基础(2)】Nginx的配置文件说明及虚拟主机配置示例

    配置文件说明 #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为当前主机的CPU总核心数. worker_processes 8; #全局错误日志定义类型, ...

  9. phpStudy 2014的Apache虚拟主机配置

    安装phpStudy直接百度下载,傻瓜式安装很简单,一直点击下一步即可,中途根据个人爱好设置WWW目录,我的设置在D盘根目录里. 打开虚拟主机配置,打开D:\phpStudy\Apache\conf下 ...

随机推荐

  1. java volatile关键字解析

    volatile是什么 volatile在java语言中是一个关键字,用于修饰变量.被volatile修饰的变量后,表示这个变量在不同线程中是共享,编译器与运行时都会注意到这个变量是共享的,因此不会对 ...

  2. Redis之PHP操作

    一.Redis连接与认证 //连接参数:ip.端口.连接超时时间,连接成功返回true,否则返回false $ret = $redis->connect('127.0.0.1', 6379, 3 ...

  3. scrapy 爬虫基础

    Scrapy是Python开发的一个快速.高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据.Scrapy用途广泛,可以用于数据挖掘.监测和自动化测试. 安装Scrapy的 ...

  4. 11.C++-临时对象分析

    首先来参考以下代码: #include <stdio.h> class Test { int mi; public: Test(int i) { mi = i; } Test() { Te ...

  5. c++中回调函数和函数指针的使用

    #include "stdafx.h" #include <iostream> //#include <string> using namespace st ...

  6. Intellij IDEA查看所有断点

    项目中打的断点太多,有时自己也想不到打在哪里了,也不知道哪些方法.哪些代码行上打了断点,在IDEA中如何查看所有断点呢? 方法如下: step 1 IDEA的debug面板中有一个名称为View Br ...

  7. JWT实战:使用axios+PHP实现登录认证

    上一篇文中,我们学习了什么是JWT(Json Web Token),今天我们来结合实例给大家讲述JWT的实战应用,就是如何使用前端Axios与后端PHP实现用户登录鉴权认证的过程. 查看演示 下载源码 ...

  8. openstack中的环境准备

    openstack中环境准备基于Ubuntu系统 author:headsen chen   2017-10-13  11:51:50 个人原创,转载请注明作者,出处. 6 apt-get insta ...

  9. Mac安装pycharm 的下载链接和破解方法

     PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试.语法高亮.Project管理.代码跳转.智能提示.自动完成.单元测试.版本控制 ...

  10. 怎么看 EOS 的代码最爽?

    进入 EOS 的世界之前,愉快地看系统代码是第一步,试了 Visual Studio / Source Insight / Understand / Sublime 等多款 IDE / 编辑器后,强烈 ...