一、虚拟目录

之前的个人主页,为了安全起见,需要把~yanji 用户隐藏起来,这时就可以设置个 虚拟目录。

它在Apache服务器应用比较多,能够隐藏系统的真实目录,实用性非常高。

虚拟目录主要 通过 Alias语句 和 ScriptAlias语句进行实现

二者区别:

Alias语句  :         针对普通别名

ScriptAlias语句:   针对脚本别名,即是ScriptAlias语句设置的别名可以支持CGI脚本。

1、Alias语句方式     Alias    /别名  "真实目录"

[root@localhost root]#    cd   /etc/httpd/conf.d
[root@localhost conf.d]#  cat  >   v_p_user_auth.conf
Alias    "/useryan"   "/home/yanji/public_html"

[root@localhost conf.d]#   service   httpd    restart
停止 httpd:                                               [  确定  ]
启动 httpd:                                               [  确定  ]

在浏览器验证如下     http://192.168.170.4/useryan/

2、ScriptAlias语句方式     ScriptAlias     /别名  "真实目录"

[root@localhost conf.d]#   vi   /etc/httpd/conf/httpd.conf

找到ScriptAlias  /cgi-bin/   "/var/www/cgi-bin/"  确保它不给“#”注释。  如下图

创建测试的主页

[root@localhost conf.d]# cat  >  /var/www/cgi-bin/test.sh

#! /bin/bash
echo "Content-type: text/html"
echo
for x in 早上 中午 晚上;
do
echo "$x<br/>"
done

浏览器输入  http://192.168.170.4/cgi-bin/test.sh
会因为权限问题,不成功。

[root@localhost conf.d]#   chmod   +x   /var/www/cgi-bin/test.sh

(注意:
      如果网页乱码,就是/etc/httpd/conf/httpd.conf里面的AddDefaultCharset的值不为utf-8

改为utf-8后,重启httpd服务就行)

二、目录权限配置

在Apache服务器中,可以使用Order allow deny 语句对其进行控制,有两种格式:

1、Order  allow,deny                                     (表示先允许后拒绝,即是没有允许的全部拒绝) 严格配置

Allow   from  192.168.170.0/24                 (表示192.168.170.0/24 网段的所有主机可以访问)

Deny   from  all                                          (表示拒绝所有主机的访问)

2、Order  deny,allow                                        (表示先拒绝后允许,默认没有拒绝的全部允许)  宽松配置

Deny  from  192.168.170.0/24                     (表示拒绝192.168.170.0/24网段的所有主机访问,允许其他网段的主机访问)

例如:   /var/www/music  目录只允许 内网用户访问,不允许外网用户访问,那就把内网的网段范围写在<Directory  "/var/www/music" >节点之间

为了不混乱主配置文件,我们可以在 /etc/httpd/conf.d  目录创建music.conf文件,添加以下内容:

Alias  "/music"   "/var/www/music"

<Directory  "/var/www/music">

Options  Indexes  SymLinksIfOwnerMatch

Order  allow,deny

Allow   from  192.168.170.0/24   192.168.155.0/24

</Directory>

然后重启服务就行了   apachectl  restart

如果<Directory  "/var/www/music" >节点之间加上

AuthType   Basic
AuthName   "please  input  name$passwd"
AuthUserFile    "/var/www/users"
Require    valid-user

就可以同上一篇的身份验证结合,增强安全性。

13、Apache中虚拟目录和目录权限配置的更多相关文章

  1. apache中虚拟主机的配置

    一.两种方式:基于域名的虚拟主机和基于IP地址的的虚拟主机 (这里基于前者) 二.作用:实现在同一个web服务器下,同时运行很多个站点(项目) 三.虚拟主机的配置 1.在核心配置文件中加载虚拟主机配置 ...

  2. Win7 64位 php-5.5.13+Apache 2.4.9+mysql-5.6.19 配置

    一 :准备阶段 1:php php-5.5.13下载链接:http://windows.php.net/downloads/releases/php-5.5.13-Win32-VC11-x64.zip ...

  3. Apache中的gzip压缩作用及配置

    gzip会对文本资源进行压缩,一般能节省40%的大小,二进制内容不需要开启Gzip压缩,因为这些文件是已经压缩过的,如果再进行gzip压缩可能反而会增加其大小,并且空耗cpu资源啊. 静态资源一般都会 ...

  4. Centos7下配置Apache的虚拟主机

    一.虚拟主机 虚拟主机是Apache提供的一个功能,通过虚拟主机拉雅在一台服务器上部署多个网站.虽然服务器的IP地址是相同的,但用户当用户使用不同的域名访问时,访问到的是不同的网站. 下面讲解Apac ...

  5. apache 2.4 访问权限配置

    在apache 2.4里,访问权限配置与2.2不同,如果设置不对,则会报403错误,日志中会报 AH01630: client denied by server configuration.   [S ...

  6. Linux 账号管理与 ACL 权限配置

    要登陆 Linux 系统一定要有账号与口令才行,否则怎么登陆,您说是吧?不过, 不同的使用者应该要拥有不同的权限才行吧?我们还可以透过 user/group 的特殊权限配置, 来规范出不同的群组开发项 ...

  7. 第十四章、Linux 账号管理与 ACL 权限配置

    1. Linux 的账号与群组 1.1 使用者标识符: UID 与 GID 1.2 使用者账号:/etc/passwd 文件结构, /etc/shadow 文件结构 1.3 关于群组: /etc/gr ...

  8. Windows下SVN权限配置过程详解

    本节讲解一下Windows下SVN权限配置说明,针对的是一个目录下多库的情况,下面是具体的介绍,希望通过本文的学习,你能够对SVN权限配置问题有更加深刻的认识. 1.本文档适用于对Subvesion的 ...

  9. odoo权限配置讲解2

    今天我们在来讲解一下odoo中配合使用公司开发的权限配置模块,简单配置odoo权限的操作说明 接着上篇讲到的,昨天我们只是做了一个简单的表单模型的筛选规则 今天来讲解一下如何在创建内贸报价单的时候,在 ...

随机推荐

  1. Windows下程序打包发布时的小技巧

    一.背景 Windows下开发的应用程序在发布时,需要将其依赖的一些动态链接库一起打进安装包里面去.这个时候,快速确定这个程序到底依赖哪些动态链接库变得非常重要.很久以前写过一篇关于Qt程序安装包制作 ...

  2. C# 洗牌算法

    最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷 学无止境,精益求精   C#洗牌算法如下: class Program { ...

  3. ASP.NET5,MVC 6,Beta 7与VS 2015 RTM的兼容问题

    温馨提示:本文杂而乱,最终不知所云. Visual Studio 2015 RTM已经于2015年7月20号正式发布,我也在第一时间下载安装了起来. 虽然在5月份就开始使用RC版本,但是还是很期待正式 ...

  4. Newtonsoft.Json异常处理

    var resultStr="{\"Success\":false,\"Data\":1}"; GetRequestPriceRendaIn ...

  5. nodejs连接mongodb的方法

    一. var express = require('express'); var mongodb = require('mongodb'); var app = express(); app.use( ...

  6. input输入框提示语

    <input id="username" name="username" type="text" placeholder=" ...

  7. c++函数模板作为类的成员函数,编译报错LNK2019的解决方法

    为了使某个类的成员函数能对不同的参数进行相同的处理,需要用到函数模板,即template<typename T> void Function(). 编译时报错LNK2019 解决方法: 1 ...

  8. 19、ASP.NET MVC入门到精通——Unity

    一.IOC介绍 IOC(Inversion of Control),中文译为控制反转,又称为“依赖注入”(DI =Dependence Injection) IOC的基本概念是:不创建对象,但是描述创 ...

  9. [连载]《C#通讯(串口和网络)框架的设计与实现》- 5.串口和网络统一IO设计

    目       录 第五章           串口和网络统一IO设计... 2 5.1           统一IO接口... 2 5.1.1    串口IO.. 4 5.1.2    网络IO.. ...

  10. [JS]笔记14之事件委托

    -->什么是事件委托-->事件委托原理-->事件委托优点-->事件源 / 目标源 一.什么是事件委托 通俗的讲,onclick,onmouseover,onmouseout等这 ...